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);
        }
예제 #2
0
 public static void AssertCompleted <T>(this TestObserver <T> observer)
 {
     observer.IsCompleted.Should().BeTrue("Observable should be in completed state");
 }
예제 #3
0
 public static void AssertValuesCount <T>(this TestObserver <T> observer, int expectedCount)
 {
     observer.ReceivedValues.Should().HaveCount(expectedCount, $"Observable should returns {expectedCount} values");
 }
예제 #4
0
 public static void AssertPredicate <T>(this TestObserver <T> observer, Func <IEnumerable <T>, bool> preficate)
 {
     preficate.Invoke(observer.ReceivedValues).Should().BeTrue("Observable should match predicate");
 }
예제 #5
0
 public static void AssertNoErrors <T>(this TestObserver <T> observer)
 {
     observer.ReceivedError.Should().BeNull("Observable should not raise any exception");
 }