Exemplo n.º 1
0
        protected override void TeardownContext()
        {
            _unsubscribe();

            LocalBus.ShouldNotHaveSubscriptionFor <PingMessage>();

            base.TeardownContext();
        }
Exemplo n.º 2
0
        public void Should_remove_any_previous_subscriptions()
        {
            RemoteBus.SubscribeHandler <A>(x => { });
            RemoteBus.ShouldHaveSubscriptionFor <A>();
            LocalBus.ShouldHaveRemoteSubscriptionFor <A>();

            RemoteBus.Dispose();

            ThreadUtil.Sleep(2.Seconds());

            SetupRemoteBus();

            LocalBus.ShouldNotHaveSubscriptionFor <A>();
        }
Exemplo n.º 3
0
        public void Removing_a_subscription_twice_should_not_have_a_negative_impact()
        {
            Guid clientId  = CombGuid.Generate();
            Uri  clientUri = new Uri("loopback://localhost/monster_beats");

            var subscription = new SubscriptionInformation(clientId, 1, typeof(PingMessage), RemoteBus.Endpoint.Address.Uri);

            LocalControlBus.Endpoint.Send(new AddSubscriptionClient(clientId, clientUri, clientUri));
            LocalControlBus.Endpoint.Send(new AddSubscription(subscription));
            LocalBus.ShouldHaveRemoteSubscriptionFor <PingMessage>();

            LocalControlBus.Endpoint.Send(new RemoveSubscription(subscription));
            LocalControlBus.Endpoint.Send(new RemoveSubscription(subscription));

            LocalBus.ShouldNotHaveSubscriptionFor <PingMessage>();
        }
Exemplo n.º 4
0
        public void Should_create_outbound_sink_for_route()
        {
            var address = new Uri("loopback://localhost/test_target");

            var configurator = new RoutingConfigurator();

            configurator.Route <PingMessage>().To(address);
            configurator.Route <PongMessage>().To(address);

            IBusService busService = configurator.Create(LocalBus);

            busService.Start(LocalBus);

            LocalBus.ShouldHaveRemoteSubscriptionFor <PingMessage>();
            LocalBus.ShouldHaveRemoteSubscriptionFor <PongMessage>();

            busService.Stop();

            LocalBus.ShouldNotHaveSubscriptionFor <PingMessage>();

            busService.Dispose();
        }