Exemplo n.º 1
0
        public void Complex_scenario_3(BufferSubject <string> sut, IObserver <string> observer, Generator <string> generator)
        {
            sut.OnNext(generator);
            sut.OnNext(generator);
            sut.OnNext(generator);

            var subscription = sut.Subscribe(observer);

            sut.OnNext(generator);
            sut.OnNext(generator);
            sut.OnNext(generator);

            subscription.Dispose();

            sut.OnNext(generator);
            sut.OnNext(generator);
            sut.OnNext(generator);

            sut.Subscribe(observer);

            sut.OnNext(generator);

            sut.OnCompleted();

            observer.ReceivedItems(10);
            observer.IsCompleted();
        }
Exemplo n.º 2
0
        public void Late_subscriber_is_notified_when_completed(BufferSubject <string> sut, IObserver <string> observer)
        {
            sut.OnCompleted();

            sut.Subscribe(observer);

            observer.IsCompleted();
        }
Exemplo n.º 3
0
        public void IsRunning_returns_false_after_error_with_subscribers(BufferSubject <string> sut, IObserver <string> observer, Exception error)
        {
            sut.Subscribe(observer);

            sut.OnError(error);

            Assert.That(sut.IsRunning, Is.False);
        }
Exemplo n.º 4
0
        public void IsRunning_returns_false_when_OnCompleted_with_subscribers(BufferSubject <string> sut, IObserver <string> observer)
        {
            sut.Subscribe(observer);

            sut.OnCompleted();

            Assert.That(sut.IsRunning, Is.False);
        }
Exemplo n.º 5
0
        public void Late_subscriber_is_notified_when_error(BufferSubject <string> sut, IObserver <string> observer, Exception error)
        {
            sut.OnError(error);

            sut.Subscribe(observer);

            observer.HasError(error);
        }
Exemplo n.º 6
0
        public void Second_late_subscriber_is_notified_when_completed(BufferSubject <string> sut, IObserver <string> first, IObserver <string> second)
        {
            sut.OnCompleted();

            sut.Subscribe(first);

            sut.Subscribe(second);

            second.IsCompleted();
        }
Exemplo n.º 7
0
        public void Second_late_with_early_first_subscriber_is_notified_when_error(BufferSubject <string> sut, IObserver <string> first, IObserver <string> second, Exception error)
        {
            sut.Subscribe(first);

            sut.OnError(error);

            sut.Subscribe(second);

            second.HasError(error);
        }
Exemplo n.º 8
0
        public void Late_subscriber_gets_all_items(BufferSubject <string> sut, IObserver <string> observer, Generator <string> generator)
        {
            sut.OnNext(generator);

            sut.OnNext(generator);

            sut.OnNext(generator);

            sut.Subscribe(observer);

            observer.ReceivedItems(3);
        }
Exemplo n.º 9
0
        public void Complex_scenario_1(BufferSubject <string> sut, IObserver <string> first, IObserver <string> second, Generator <string> generator)
        {
            sut.OnNext(generator);
            sut.Subscribe(first);
            sut.OnNext(generator);
            sut.OnCompleted();
            sut.Subscribe(second);

            first.ReceivedItems(2);
            first.IsCompleted();
            second.ReceivedNoItem();
            second.IsCompleted();
        }
Exemplo n.º 10
0
        public void Second_late_subscriber_with_early_first_subscriber_gets_no_item(BufferSubject <string> sut, IObserver <string> first, IObserver <string> second, Generator <string> generator)
        {
            sut.Subscribe(first);

            sut.OnNext(generator);

            sut.OnNext(generator);

            sut.OnNext(generator);

            sut.Subscribe(second);

            second.ReceivedNoItem();
        }
Exemplo n.º 11
0
        public void Second_early_subscriber_gets_all_items(BufferSubject <string> sut, IObserver <string> first, IObserver <string> second, Generator <string> generator)
        {
            sut.Subscribe(first);

            sut.Subscribe(second);

            sut.OnNext(generator);

            sut.OnNext(generator);

            sut.OnNext(generator);

            second.ReceivedItems(3);
        }
Exemplo n.º 12
0
        public void IsRunning_returns_false_after_error(BufferSubject <string> sut, Exception error)
        {
            sut.OnError(error);

            Assert.That(sut.IsRunning, Is.False);
        }
Exemplo n.º 13
0
        public void IsRunning_returns_false_when_OnCompleted(BufferSubject <string> sut)
        {
            sut.OnCompleted();

            Assert.That(sut.IsRunning, Is.False);
        }