Exemplo n.º 1
0
        public static void Route(this IBus bus, object message, Guid routingSlipId, params string[] destinations)
        {
            var routingSlip = new RoutingSlip(routingSlipId, destinations);

            var router = new Router(bus);

            router.SendToFirstStep(message, routingSlip);
        }
        public void Should_send_to_first_destination()
        {
            var routingSlip = new RoutingSlipBuilder().CreateRoutingSlip(Guid.NewGuid(), "foo");

            var bus = new Bus();
            var router = new Router(bus);

            var message = new DummyMessage();
            router.SendToFirstStep(message, routingSlip);

            bus.GetMessageHeader(message, Router.RoutingSlipHeaderKey).ShouldNotBeNull();
            bus.ExplicitlySent.Count().ShouldEqual(1);
            bus.ExplicitlySent.First().Item1.ShouldEqual("foo");
            bus.ExplicitlySent.First().Item2.ShouldEqual(message);
        }