public void SendsMessagesToTheRightDestination() { // arrange determineDestination.Stub(d => d.GetEndpointFor(typeof(PolymorphicMessage))).Return("woolala"); var theMessageThatWasSent = new PolymorphicMessage(); // act bus.Send(theMessageThatWasSent); // assert sendMessages.AssertWasCalled(s => s.Send(Arg <string> .Is.Equal("woolala"), Arg <TransportMessageToSend> .Is.Anything)); }
public void SendsMessagesToTheRightDestinationAlsoWhenSendingBatch() { // arrange determineDestination.Stub(d => d.GetEndpointFor(typeof(PolymorphicMessage))).Return("polymorphic message endpoint"); determineDestination.Stub(d => d.GetEndpointFor(typeof(SomeRandomMessage))).Return("some random message endpoint"); var firstMessage = new PolymorphicMessage(); var secondMessage = new SomeRandomMessage(); // act bus.Batch.Send(firstMessage, secondMessage); // assert sendMessages.AssertWasCalled(s => s.Send(Arg <string> .Is.Equal("polymorphic message endpoint"), Arg <TransportMessageToSend> .Is.Anything)); sendMessages.AssertWasCalled(s => s.Send(Arg <string> .Is.Equal("some random message endpoint"), Arg <TransportMessageToSend> .Is.Anything)); }