public void Should_place_on_a_single_queue() { var msg = new FakeDto(); var writeQueues = new[] { new FakeValidMessageQueue() }; var bus = new Bus(new FakeBusConfig(), new NullLogger(), new FakeValidMessageQueue(), new FakeValidMessageQueue(), writeQueues); bus.Send(msg); Assert.That(writeQueues[0].Count, Is.EqualTo(1)); }
public void Should_place_on_next_write_queue_if_auto_distribute_configured() { var msg = new FakeDto(); var writeQueues = new[] { new FakeValidMessageQueue(), new FakeValidMessageQueue(), new FakeValidMessageQueue() }; var bus = new Bus(new FakeBusConfig { AutoDistributeOnSend = true }, new NullLogger(), new FakeValidMessageQueue(), new FakeValidMessageQueue(), writeQueues); bus.Send(msg); Assert.That(writeQueues[0].Count, Is.EqualTo(1)); Assert.That(writeQueues[1].Count, Is.EqualTo(0)); Assert.That(writeQueues[2].Count, Is.EqualTo(0)); bus.Send(msg); Assert.That(writeQueues[0].Count, Is.EqualTo(1)); Assert.That(writeQueues[1].Count, Is.EqualTo(1)); Assert.That(writeQueues[2].Count, Is.EqualTo(0)); bus.Send(msg); Assert.That(writeQueues[0].Count, Is.EqualTo(1)); Assert.That(writeQueues[1].Count, Is.EqualTo(1)); Assert.That(writeQueues[2].Count, Is.EqualTo(1)); }
public void Should_log_all_steps_involved() { var logger = new FakeLogger(); var msg = new FakeDto(); var writeQueues = new[] { new FakeValidMessageQueue() }; var bus = new Bus(new FakeBusConfig(), logger, new FakeValidMessageQueue(), new FakeValidMessageQueue(), writeQueues); bus.Send(msg); Assert.That(logger[0], Is.StringEnding("Transaction started")); Assert.That(logger[1], Is.StringEnding("Started SEND Operation")); Assert.That(logger[2], Is.StringEnding("Payload: FakeDto")); Assert.That(logger[3], Is.StringEnding("Sent to queue: FakeValidMessageQueue")); Assert.That(logger[4], Is.StringEnding("Completed SEND Operation")); Assert.That(logger[5], Is.StringEnding("Transaction committed")); }