public void HandleWithNoInterceptor() { var proxy = new MessageHandlerProxy <MessageA>(new MessageHandler1(), null); var message = new MessageA { Id = Guid.NewGuid().ToString(), BusinessKey = "Key1" }; var ctx = new MockupMessageContext(); proxy.HandleAsync(message, ctx).Wait(); Assert.Equal($"MessageA_{message.Id}", ctx.GetResult()); }
public void HandleWithAutoIdempotentInterceptor() { var proxy = new MessageHandlerProxy <MessageA>(new MessageHandler1(), new IInterceptor[] { new AutoIdempotentInterceptor(new InMemoryAutoIdempotentStore()) }); var message = new MessageA { Id = Guid.NewGuid().ToString(), BusinessKey = "Key1" }; var ctx = new MockupMessageContext(); proxy.HandleAsync(message, ctx).Wait(); Assert.Equal($"MessageA_{message.Id}", ctx.GetResult()); Assert.Throws <DuplicateMessageHandlingException>(() => { proxy.HandleAsync(message, ctx).Wait(); }); }