public void ListenerRaisesEventsOnReceivingCommands() { // Arrange using (var service = new BlockingReceiver <int>()) using (var listener = new TestListener()) using (var sender = listener.Sender()) { var messages = new List <ReceivedEventArgs>(); listener.Received += (o, e) => messages.Add(e); service.SubscribeToCommand(listener); // Act sender.PublishCommand(3); service.Next(); // Assert var message = messages.Single(); Assert.Equal(service.GetType(), message.HandledBy); Assert.Equal("Int32", message.Topic); Assert.Equal("3", message.Message); } }