public void Should_route_to_pared_down_process() { var messageABC = new SequentialProcess { StepAInfo = "Foo", StepBInfo = "Bar", StepCInfo = "Baz", }; var destinations = new[] { "NServiceBus.MessageRouting.RoutingSlips.Samples.StepA", "NServiceBus.MessageRouting.RoutingSlips.Samples.StepC", "NServiceBus.MessageRouting.RoutingSlips.Samples.ResultHost", }; Console.WriteLine("Sending message..."); var last = destinations.Last(); var events = _fixture.SendAndWait( bus => bus.Route(messageABC, Guid.NewGuid(), destinations), c => c.Endpoint != last, TimeSpan.FromSeconds(60)).ToArray(); events.Count().ShouldEqual(3); }
public void Start() { var toggle = false; while (Console.ReadLine() != null) { if (toggle) { var messageABC = new SequentialProcess { StepAInfo = "Foo", StepBInfo = "Bar", StepCInfo = "Baz", }; Logger.Info("Sending message for step A, B, C"); Bus.Route(messageABC, Guid.NewGuid(), new[] { "NServiceBus.MessageRouting.RoutingSlips.Samples.StepA", "NServiceBus.MessageRouting.RoutingSlips.Samples.StepB", "NServiceBus.MessageRouting.RoutingSlips.Samples.StepC", "NServiceBus.MessageRouting.RoutingSlips.Samples.ResultHost", }); } else { var messageAC = new SequentialProcess { StepAInfo = "Foo", StepCInfo = "Baz", }; Logger.Info("Sending message for step A, C"); Bus.Route(messageAC, Guid.NewGuid(), new[] { "NServiceBus.MessageRouting.RoutingSlips.Samples.StepA", "NServiceBus.MessageRouting.RoutingSlips.Samples.StepC", "NServiceBus.MessageRouting.RoutingSlips.Samples.ResultHost", }); } toggle = !toggle; } }