diff --git a/src/NServiceBus.Extensions.IntegrationTesting/EndpointFixture.cs b/src/NServiceBus.Extensions.IntegrationTesting/EndpointFixture.cs index 3fdf308..da19fe0 100644 --- a/src/NServiceBus.Extensions.IntegrationTesting/EndpointFixture.cs +++ b/src/NServiceBus.Extensions.IntegrationTesting/EndpointFixture.cs @@ -88,7 +88,8 @@ private static async Task ExecuteAndWait(() => session.SendLocal(firstMessage)); - result.IncomingMessageContexts.Count.ShouldBe(3); - result.OutgoingMessageContexts.Count.ShouldBe(3); + result.IncomingMessageContexts.Count.ShouldBe(4); + result.OutgoingMessageContexts.Count.ShouldBe(4); result.ReceivedMessages.ShouldNotBeEmpty(); @@ -101,6 +101,11 @@ public class SecondMessage : ICommand public string Message { get; set; } } + public class ThirdMessage : IEvent + { + public string Message { get; set; } + } + public class FinalMessage : ICommand { public string Message { get; set; } @@ -120,6 +125,12 @@ public Task Handle(FirstMessage message, IMessageHandlerContext context) => public class SecondHandler : IHandleMessages { public Task Handle(SecondMessage message, IMessageHandlerContext context) => + context.Publish(new ThirdMessage {Message = message.Message}); + } + + public class ThirdHandler : IHandleMessages + { + public Task Handle(ThirdMessage message, IMessageHandlerContext context) => context.SendLocal(new FinalMessage {Message = message.Message}); }