public static IMessageDeliveryResult FromDataTransferObject(messagedelivery messageDeliveryDto) { IMessageDeliveryResult messageDeliveryResult = new MessageDeliveryResult { MessageId = messageDeliveryDto.messageid, PrimaryDocument = FromDataTransferObject(messageDeliveryDto.primarydocument), Attachments = messageDeliveryDto.attachment?.Select(FromDataTransferObject).ToList(), DeliveryTime = messageDeliveryDto.deliverytime, DeliveryMethod = messageDeliveryDto.deliverymethod.ToDeliveryMethod(), Status = messageDeliveryDto.status.ToMessageStatus(), SenderId = messageDeliveryDto.senderid }; return(messageDeliveryResult); }
public void Message() { //Arrange var deliverytime = DateTime.Now.AddDays(3); var source = new messagedelivery { primarydocument = new document { subject = "TestSubject", filetype = "txt", authenticationlevel = authenticationlevel.TWO_FACTOR, sensitivitylevel = sensitivitylevel.SENSITIVE, uuid = "uuid", contenthash = new contenthash { hashalgorithm = "SHA256", Value = "5o0RMsXcgSZpGsL7FAmhSQnvGkqgOcvl5JDtMhXBSlc=" } }, attachment = new[] { new document { subject = "TestSubject Attachment", filetype = "txt", authenticationlevel = authenticationlevel.TWO_FACTOR, sensitivitylevel = sensitivitylevel.SENSITIVE, uuid = "attachmentGuid", contenthash = new contenthash { hashalgorithm = "SHA256", Value = "5o0RMsXcgSZpGsL7FAmhSQnvGkqgOcvl5JDtMhXBSlc=" } } }, deliverytime = deliverytime, deliverymethod = channel.DIGIPOST, deliverytimeSpecified = true, status = messagestatus.DELIVERED, senderid = 123456 }; var expected = new MessageDeliveryResult { PrimaryDocument = new Document(source.primarydocument.subject, source.primarydocument.filetype, AuthenticationLevel.TwoFactor, SensitivityLevel.Sensitive) { Guid = source.primarydocument.uuid, ContentHash = new ContentHash { HashAlgoritm = source.primarydocument.contenthash.hashalgorithm, Value = source.primarydocument.contenthash.Value } }, Attachments = new List <Document> { new Document(source.attachment[0].subject, source.attachment[0].filetype, AuthenticationLevel.TwoFactor, SensitivityLevel.Sensitive) { Guid = source.attachment[0].uuid, ContentHash = new ContentHash { HashAlgoritm = source.attachment[0].contenthash.hashalgorithm, Value = source.attachment[0].contenthash.Value } } }, DeliveryTime = source.deliverytime, DeliveryMethod = DeliveryMethod.Digipost, Status = MessageStatus.Delivered, SenderId = source.senderid }; //Act var actual = SendDataTransferObjectConverter.FromDataTransferObject(source); //Assert Comparator.AssertEqual(expected, actual); }