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); }