public async Task Returns_With_Error_PMode_Not_Found_When_ReceivePMode_Is_Not_Defined(string id) { // Arrange var stub = new Mock <IConfig>(); stub.Setup(c => c.GetReceivingPModes()) .Returns(new[] { new ReceivingProcessingMode { Id = "existing-id" } }); var sut = new ReceiveMessageTransformer(stub.Object); sut.Configure( new Dictionary <string, string> { [ReceiveMessageTransformer.ReceivingPModeKey] = id }); var msg = new ReceivedMessage( AS4Message.Empty.ToStream(), Constants.ContentTypes.Soap); // Act MessagingContext actual = await sut.TransformAsync(msg); // Assert MessageUnit primaryMessageUnit = actual.AS4Message.MessageUnits.First(); Assert.IsType <Error>(primaryMessageUnit); var error = (Error)primaryMessageUnit; Assert.Equal( ErrorAlias.ProcessingModeMismatch, error.ErrorLines.First().ShortDescription); }
public async Task Adds_ReceivePMode_When_PMode_Setting_Is_Defined(string id) { // Arrange var stub = new Mock <IConfig>(); stub.Setup(c => c.GetReceivingPModes()) .Returns(new[] { new ReceivingProcessingMode { Id = "existing-id" } }); var sut = new ReceiveMessageTransformer(stub.Object); sut.Configure( new Dictionary <string, string> { [ReceiveMessageTransformer.ReceivingPModeKey] = null }); var msg = new ReceivedMessage( AS4Message.Empty.ToStream(), Constants.ContentTypes.Soap); // Act MessagingContext result = await sut.TransformAsync(msg); // Assert bool expectedNotConfiguredPMode = result.ReceivingPMode == null; bool expectedConfiguredPMode = result.ReceivingPMode?.Id == id; Assert.True(expectedNotConfiguredPMode || expectedConfiguredPMode); }
public void Throws_InvalidMessage_When_Receiving_SignalMessage_While_Having_A_ReceivingPMode_Configured(SignalMessage s) { // Arrange AS4Message receipt = AS4Message.Create(s); var incoming = new ReceivedMessage(receipt.ToStream(), Constants.ContentTypes.Soap); var sut = new ReceiveMessageTransformer(StubConfig.Default); sut.Configure( new Dictionary <string, string> { [ReceiveMessageTransformer.ReceivingPModeKey] = "pmode-id" }); // Act / Assert Assert.Throws <InvalidMessageException>( () => sut.TransformAsync(incoming).GetAwaiter().GetResult()); }