public static TestObserver <T> CreateTestObserver <T>(this IObservable <T> observable, TestScheduler testScheduler) { var observer = new TestObserver <T>(); observable .SubscribeOn(testScheduler) .ObserveOn(testScheduler) .Subscribe(observer); testScheduler.Start(); return(observer); }
public static void AssertCompleted <T>(this TestObserver <T> observer) { observer.IsCompleted.Should().BeTrue("Observable should be in completed state"); }
public static void AssertValuesCount <T>(this TestObserver <T> observer, int expectedCount) { observer.ReceivedValues.Should().HaveCount(expectedCount, $"Observable should returns {expectedCount} values"); }
public static void AssertPredicate <T>(this TestObserver <T> observer, Func <IEnumerable <T>, bool> preficate) { preficate.Invoke(observer.ReceivedValues).Should().BeTrue("Observable should match predicate"); }
public static void AssertNoErrors <T>(this TestObserver <T> observer) { observer.ReceivedError.Should().BeNull("Observable should not raise any exception"); }