private static MessageEntity BuildForMessageUnit(MessageUnit expected)
            {
                var message = new StubMessageEntity();

                message.AssignAS4Properties(expected);

                return(message);
            }
            public async Task MessageBodyReturnsNullStream_IfNoMessageLocationIsSpecified()
            {
                // Arrange
                StubMessageEntity sut = CreateMessageEntity(messageLocation: null);

                // Act
                using (Stream actualStream = await sut.RetrieveMessageBody(store: null))
                {
                    // Assert
                    Assert.Null(actualStream);
                }
            }
            public void ReceivingPModeInformationIsCorrectlySet()
            {
                var entity = new StubMessageEntity();

                var receivingPMode = new ReceivingProcessingMode()
                {
                    Id = "sending_pmode_id"
                };

                entity.SetPModeInformation(receivingPMode);

                Assert.Equal(receivingPMode.Id, entity.PModeId);
                Assert.Equal(entity.PMode, AS4XmlSerializer.ToString(receivingPMode));
            }
            public async Task MessageEntityCatchesInvalidMessageBodyRetrieval()
            {
                // Arrange
                StubMessageEntity sut = CreateMessageEntity(messageLocation: "ignored");
                var stubProvider      = new MessageBodyStore();

                stubProvider.Accept(condition: s => true, persister: new SaboteurMessageBodyStore());

                // Act
                using (Stream actualStream = await sut.RetrieveMessageBody(stubProvider))
                {
                    // Assert
                    Assert.Null(actualStream);
                }
            }