static SendConnector InitializeBehavior(FakeRouter router = null) { var metadataRegistry = new MessageMetadataRegistry(new Conventions().IsMessageType); metadataRegistry.RegisterMessageTypesFoundIn(new List <Type> { typeof(MyMessage), typeof(MessageWithoutRouting) }); return(new SendConnector(router ?? new FakeRouter())); }
public async Task Should_set_messageintent_to_send() { var physicalRouter = new FakeRouter { FixedDestination = new UnicastRoutingStrategy("destination endpoint") }; var behavior = InitializeBehavior(physicalRouter); var context = CreateContext(); await behavior.Invoke(context, ctx => Task.CompletedTask); Assert.AreEqual(1, context.Headers.Count); Assert.AreEqual(MessageIntentEnum.Send.ToString(), context.Headers[Headers.MessageIntent]); }
public async Task Should_use_router_to_route() { var logicalRouter = new FakeRouter { FixedDestination = new UnicastRoutingStrategy("LogicalAddress") }; var behavior = InitializeBehavior(logicalRouter); var context = CreateContext(); UnicastAddressTag addressTag = null; await behavior.Invoke(context, c => { addressTag = (UnicastAddressTag)c.RoutingStrategies.Single().Apply(new Dictionary <string, string>()); return(Task.CompletedTask); }); Assert.AreEqual("LogicalAddress", addressTag.Destination); }