Task.Run() leaves a warning it will run synchronosly.

This commit is contained in:
Tracy Pearson
2022-09-01 08:39:24 -04:00
parent 2d8ea50944
commit f19d390b78

View File

@@ -80,7 +80,7 @@ namespace WpfViewModelFirst.Tests
TaskCompletionSource<bool> taskCompletionSource = new(); TaskCompletionSource<bool> taskCompletionSource = new();
main.ItHappened += () => taskCompletionSource.SetResult(true); main.ItHappened += () => taskCompletionSource.SetResult(true);
Task.Run(() => Task run = new(() =>
{ {
DispatcherFrame frame = new(); DispatcherFrame frame = new();
frame.Dispatcher.Invoke( frame.Dispatcher.Invoke(
@@ -91,6 +91,7 @@ namespace WpfViewModelFirst.Tests
}); });
Dispatcher.PushFrame(frame); Dispatcher.PushFrame(frame);
}); });
run.Start();
await taskCompletionSource.Task.WaitAsync(CancellationToken.None); await taskCompletionSource.Task.WaitAsync(CancellationToken.None);
Assert.IsType<Part2ViewModel>(main.CurrentViewModel); Assert.IsType<Part2ViewModel>(main.CurrentViewModel);
} }
@@ -104,7 +105,7 @@ namespace WpfViewModelFirst.Tests
TaskCompletionSource<bool> taskCompletionSource = new(); TaskCompletionSource<bool> taskCompletionSource = new();
main.ItHappened += () => taskCompletionSource.SetResult(true); main.ItHappened += () => taskCompletionSource.SetResult(true);
Task.Run(() => Task run = new(() =>
{ {
DispatcherFrame frame = new(); DispatcherFrame frame = new();
frame.Dispatcher.Invoke( frame.Dispatcher.Invoke(
@@ -115,6 +116,7 @@ namespace WpfViewModelFirst.Tests
}); });
Dispatcher.PushFrame(frame); Dispatcher.PushFrame(frame);
}); });
run.Start();
await taskCompletionSource.Task.WaitAsync(CancellationToken.None); await taskCompletionSource.Task.WaitAsync(CancellationToken.None);
Assert.Single(main.Strings); Assert.Single(main.Strings);
} }