Как получить значение после выполнения фонового работника в тестовом случае nunit?
У меня есть метод, который выполняет операцию на фоне работника. Теперь мне нужно добавить тестовый пример для того же метода.
Как я могу получить фактическое значение, которое применяется после запуска фонового работника?
public class CustomControl
{
public int values = 0;
public void OKButtonClick()
{
var worker = new BackgroundWorker();
worker.DoWork += (sender, args) =>
{
CreateFilterPredicates();
};
worker.RunWorkerCompleted += (s, e) =>
{
values = 10;
};
if (!worker.IsBusy)
{
worker.RunWorkerAsync();
}
}
}
[Test]
public void OKClickTest()
{
CustomControl filter = new CustomControl();
filter.OKButtonClick();
//How to get the value is passed?
if (filter.values == 10)
{
Assert.Pass();
}
else Assert.Fail();
}