У меня есть следующий код в тесте:
private void LoadIncomeStatementViewModel()
{
using (var evt = new AutoResetEvent(false))
{
EventHandler handler = (sender, e) => evt.Set();
_incomeStatementViewModel.Loaded -= handler;
_incomeStatementViewModel.Loaded += handler;
_incomeStatementViewModel.LoadDataCommand.Execute(null);
evt.WaitOne();
}
}
Теперь, если я запускаю следующий тест
[Test]
public void Test()
{
LoadIncomeStatementViewModel();
// do something
LoadIncomeStatementViewModel();
// do something
}
Во второй раз, когда LoadIncomeStatementViewModel () вызывается, я получаю "Безопасный дескриптор был удален »сообщение об ошибке в обработчике EventHandler = (отправитель, e) => evt.Set ();
Конечно, оператор using повторно инициализировал evt, когда метод перезапускается во второй раз.У меня такое чувство, что это может быть связано с Resharper Test Runner (Nunit 2.7) ....
Есть мысли о том, как это обойти?
Спасибо, Джереми