public void Cancel_Wait() { var cs = new CompletableSubject(); var cts = new CancellationTokenSource(); try { Task.Factory.StartNew(() => { while (!cs.HasObserver()) { ; } Thread.Sleep(100); cts.Cancel(); }); cs .Wait(cts: cts); Assert.Fail(); } catch (OperationCanceledException) { // expected } Assert.False(cs.HasObserver()); }
public void Timeout() { var cs = new CompletableSubject(); try { cs .Wait(100); Assert.Fail(); } catch (TimeoutException) { // expected } Assert.False(cs.HasObserver()); }