public void If_Empty_Byte_Array_Is_Received_Then_A_Null_Reference_Exception_Should_Be_Thrown() { //Arrange var mockBytes = new byte[] { }; var listener = new ServiceBusListener(_mockSerialiser.Object, _mockHandlerResolver.Object, _mockHandlerInvoker.Object); //Act async Task Delegate() { await listener.ReceiveMessage(mockBytes, CancellationToken.None); } //Assert Assert.That(Delegate, Throws.TypeOf <NullReferenceException>()); }
public async Task When_Message_Is_Received_The_Correct_Handler_Is_Invoked() { //Arrange var mockBytes = new byte[] { 72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100, 33 }; var mockMessage = new TestMessage(Guid.Empty, Guid.Empty); var mockHandler = new TestMessageHandler(_mockEventLogger.Object); _mockSerialiser. Setup(x => x.Deserialise(It.IsAny <MemoryStream>())). Returns(Task.FromResult((object)mockMessage)); _mockHandlerResolver. Setup(x => x.ResolveAllHandlersFor(typeof(TestMessage))). Returns(new[] { mockHandler }); var listener = new ServiceBusListener(_mockSerialiser.Object, _mockHandlerResolver.Object, _mockHandlerInvoker.Object); //Act await listener.ReceiveMessage(mockBytes, CancellationToken.None); //Assert _mockHandlerInvoker.Verify(x => x.InvokeHandlers(new [] { mockHandler }, mockMessage, CancellationToken.None), Times.Once); }
public async Task If_Deserialiser_Fails_Then_The_Exception_Will_Bubble_Up_Throw_The_Receive_Message() { //Arrange const string errorMessage = "Hello From The Test World"; var mockBytes = new byte[] { 72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100, 33 }; _mockSerialiser. Setup(x => x.Deserialise(It.IsAny <MemoryStream>())). Throws(new Exception(errorMessage)); var listener = new ServiceBusListener(_mockSerialiser.Object, _mockHandlerResolver.Object, _mockHandlerInvoker.Object); try { //Act await listener.ReceiveMessage(mockBytes, CancellationToken.None); } catch (Exception e) { //Assert Assert.That(e.Message, Is.EqualTo(errorMessage)); } }