public ControlBusSenderPostMessageAsyneTests() { _myCommand.Value = "Hello World"; _fakeMessageStore = new FakeMessageStore(); _fakeMessageProducer = new FakeMessageProducer(); _message = new Message( new MessageHeader(_myCommand.Id, "MyCommand", MessageType.MT_COMMAND), new MessageBody(JsonConvert.SerializeObject(_myCommand)) ); var messageMapperRegistry = new MessageMapperRegistry(new SimpleMessageMapperFactory(() => new MyCommandMessageMapper())); messageMapperRegistry.Register <MyCommand, MyCommandMessageMapper>(); var retryPolicy = Policy .Handle <Exception>() .RetryAsync(); var circuitBreakerPolicy = Policy .Handle <Exception>() .CircuitBreakerAsync(1, TimeSpan.FromMilliseconds(1)); _commandProcessor = new CommandProcessor( new InMemoryRequestContextFactory(), new PolicyRegistry { { CommandProcessor.RETRYPOLICYASYNC, retryPolicy }, { CommandProcessor.CIRCUITBREAKERASYNC, circuitBreakerPolicy } }, messageMapperRegistry, (IAmAMessageStoreAsync <Message>)_fakeMessageStore, (IAmAMessageProducerAsync)_fakeMessageProducer); _controlBusSender = new ControlBusSender(_commandProcessor); }
public ControlBusSenderPostMessageTests() { _myCommand.Value = "Hello World"; _fakeOutbox = new FakeOutbox(); _fakeMessageProducer = new FakeMessageProducer(); _message = new Message( new MessageHeader(_myCommand.Id, "MyCommand", MessageType.MT_COMMAND), new MessageBody(JsonSerializer.Serialize(_myCommand, JsonSerialisationOptions.Options)) ); var messageMapperRegistry = new MessageMapperRegistry(new SimpleMessageMapperFactory((_) => new MyCommandMessageMapper())); messageMapperRegistry.Register <MyCommand, MyCommandMessageMapper>(); var retryPolicy = Policy .Handle <Exception>() .Retry(); var circuitBreakerPolicy = Policy .Handle <Exception>() .CircuitBreaker(1, TimeSpan.FromMilliseconds(1)); _commandProcessor = new CommandProcessor( new InMemoryRequestContextFactory(), new PolicyRegistry { { CommandProcessor.RETRYPOLICY, retryPolicy }, { CommandProcessor.CIRCUITBREAKER, circuitBreakerPolicy } }, messageMapperRegistry, (IAmAnOutbox <Message>)_fakeOutbox, (IAmAMessageProducer)_fakeMessageProducer); _controlBusSender = new ControlBusSender(_commandProcessor); }
public ControlBusSenderPostMessageAsyncTests() { _myCommand.Value = "Hello World"; _outbox = new InMemoryOutbox(); _fakeMessageProducerWithPublishConfirmation = new FakeMessageProducerWithPublishConfirmation(); const string topic = "MyCommand"; _message = new Message( new MessageHeader(_myCommand.Id, topic, MessageType.MT_COMMAND), new MessageBody(JsonSerializer.Serialize(_myCommand, JsonSerialisationOptions.Options)) ); var messageMapperRegistry = new MessageMapperRegistry(new SimpleMessageMapperFactory((_) => new MyCommandMessageMapper())); messageMapperRegistry.Register <MyCommand, MyCommandMessageMapper>(); var retryPolicy = Policy .Handle <Exception>() .RetryAsync(); var circuitBreakerPolicy = Policy .Handle <Exception>() .CircuitBreakerAsync(1, TimeSpan.FromMilliseconds(1)); _commandProcessor = new CommandProcessor( new InMemoryRequestContextFactory(), new PolicyRegistry { { CommandProcessor.RETRYPOLICYASYNC, retryPolicy }, { CommandProcessor.CIRCUITBREAKERASYNC, circuitBreakerPolicy } }, messageMapperRegistry, _outbox, new ProducerRegistry(new Dictionary <string, IAmAMessageProducer>() { { topic, _fakeMessageProducerWithPublishConfirmation }, })); _controlBusSender = new ControlBusSender(_commandProcessor); }