У меня возникли проблемы с получением диспетчера для запуска делегата, который я передаю ему при модульном тестировании. Все работает нормально, когда я запускаю программу, но во время unit test следующий код не будет запускаться:
this.Dispatcher.BeginInvoke(new ThreadStart(delegate
{
    this.Users.Clear();
    foreach (User user in e.Results)
    {
        this.Users.Add(user);
    }
}), DispatcherPriority.Normal, null);
У меня есть этот код в моем базовом классе viewmodel, чтобы получить диспетчер:
if (Application.Current != null)
{
    this.Dispatcher = Application.Current.Dispatcher;
}
else
{
    this.Dispatcher = Dispatcher.CurrentDispatcher;
}
Есть ли что-то, что мне нужно сделать, чтобы инициализировать Dispatcher для модульных тестов? Диспетчер никогда не запускает код в делегате.