I have the following code in a test:
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();
}
}
Now, if I run the following test
[Test]
public void Test()
{
LoadIncomeStatementViewModel();
LoadIncomeStatementViewModel();
}
The second time that LoadIncomeStatementModel () is called, I get the error message “Safe descriptor was deleted” in the EventHandler Handler = (sender, e) => evt.Set ();
Of course, the using statement reinitialized evt when the method was re-run a second time. I have a feeling that this could be due to the Resharper testing tester (Nunit 2.7) ....
Any thoughts on how to get around this?
Thanks Jeremy
source
share