Exemplo n.º 1
0
 public void dispose_of_subscription_removes_it_from_composite()
 {
     var subscription = new MockSubscription<MessageA>();
     var c = new CompositeSubscription { subscription };
     c.ShouldHaveCount(1);
     subscription.Dispose();
     c.ShouldHaveCount(0);
 }
Exemplo n.º 2
0
        public void dispose_of_subscription_removes_it_from_composite()
        {
            var subscription = new MockSubscription <MessageA>();
            var c            = new CompositeSubscription {
                subscription
            };

            c.ShouldHaveCount(1);
            subscription.Dispose();
            c.ShouldHaveCount(0);
        }
Exemplo n.º 3
0
        public void correct_behavior_of_resolver_with_regard_to_subscribe_dispose_subscribe_publish_twice()
        {
            var sub1 = new MockSubscription <MessageA>();
            var r    = GetResolver();

            r.Add(sub1);
            r.GetSubscriptionsFor(new MessageA()).ShouldHaveCount(1);
            sub1.Dispose();

            sub1 = new MockSubscription <MessageA>();
            r.Add(sub1);
            r.GetSubscriptionsFor(new MessageB()).ShouldHaveCount(0);
            r.GetSubscriptionsFor(new MessageA()).ShouldHaveCount(1);
        }
Exemplo n.º 4
0
        public void correct_behavior_of_resolver_with_regard_to_subscribe_dispose_subscribe_publish_twice()
        {
            var sub1 = new MockSubscription<MessageA>();
            var r = GetResolver();

            r.Add(sub1);
            r.GetSubscriptionsFor(new MessageA()).ShouldHaveCount(1);
            sub1.Dispose();

            sub1 = new MockSubscription<MessageA>();
            r.Add(sub1);
            r.GetSubscriptionsFor(new MessageB()).ShouldHaveCount(0);
            r.GetSubscriptionsFor(new MessageA()).ShouldHaveCount(1);
        }
Exemplo n.º 5
0
        public void Sequence_of_addition_and_disposal_works_as_shown()
        {
            var sub1 = new MockSubscription <MessageA>();
            var sub2 = new MockSubscription <MessageA>();
            var sub3 = new MockSubscription <MessageB>();

            var r = GetResolver();

            r.Add(sub1);
            r.GetSubscriptionsFor(new MessageA()).ShouldHaveCount(1);
            r.Add(sub2);
            r.GetSubscriptionsFor(new MessageA()).ShouldHaveCount(2);
            r.GetSubscriptionsFor(new MessageA()).ShouldHaveCount(2);
            r.Add(sub3);
            r.GetSubscriptionsFor(new MessageB()).ShouldHaveCount(1);
            sub1.Dispose();
            r.GetSubscriptionsFor(new MessageA()).ShouldHaveCount(1);
            sub3.Dispose();
            r.GetSubscriptionsFor(new MessageB()).ShouldHaveCount(0);
        }
        public void Sequence_of_addition_and_disposal_works_as_shown()
        {
            var sub1 = new MockSubscription<MessageA>();
            var sub2 = new MockSubscription<MessageA>();
            var sub3 = new MockSubscription<MessageB>();

            var r = GetResolver();
            r.Add(sub1);
            r.GetSubscriptionsFor(new MessageA()).ShouldHaveCount(1);
            r.Add(sub2);
            r.GetSubscriptionsFor(new MessageA()).ShouldHaveCount(2);
            r.GetSubscriptionsFor(new MessageA()).ShouldHaveCount(2);
            r.Add(sub3);
            r.GetSubscriptionsFor(new MessageB()).ShouldHaveCount(1);
            sub1.Dispose();
            r.GetSubscriptionsFor(new MessageA()).ShouldHaveCount(1);
            sub3.Dispose();
            r.GetSubscriptionsFor(new MessageB()).ShouldHaveCount(0);

        }