protected void Test(string eml_file_name) { var eml_message = Parser.ParseMessageFromFile(TestFolderPath + eml_file_name); var right_result = RightParserResult.FromXml(RightParserResultsPath + eml_file_name.Replace(".eml", ".xml")); #if NEED_OUT eml_message.StoreToFile(test_results_path + eml_file_name); #endif Assert.AreEqual(right_result.From.Email, eml_message.From.Email); Assert.AreEqual(right_result.From.Name, eml_message.From.Name); Assert.AreEqual(right_result.To.Count, eml_message.To.Count); var to_enumerator = eml_message.To.OrderBy(x => x.Email).GetEnumerator(); foreach (var adress in right_result.To.OrderBy(x => x.Email)) { to_enumerator.MoveNext(); Assert.AreEqual(adress.Email, to_enumerator.Current.Email); Assert.AreEqual(adress.Name, to_enumerator.Current.Name); } var cc_enumerator = eml_message.Cc.OrderBy(x => x.Email).GetEnumerator(); foreach (var adress in right_result.Cc.OrderBy(x => x.Email)) { cc_enumerator.MoveNext(); Assert.AreEqual(adress.Email, cc_enumerator.Current.Email); Assert.AreEqual(adress.Name, cc_enumerator.Current.Name); } Assert.AreEqual(right_result.Subject, eml_message.Subject); Assert.AreEqual(right_result.AttachmentCount, eml_message.Attachments.Count); Assert.AreEqual(right_result.UnknownPatsCount, eml_message.UnknownDispositionMimeParts.Count); //Replace needed for correct file loading Assert.AreEqual(right_result.HtmlBody, eml_message.BodyHtml.Text); Assert.AreEqual(right_result.HtmlEncoding, eml_message.BodyHtml.ContentTransferEncoding); Assert.AreEqual(right_result.HtmlCharset, eml_message.BodyHtml.Charset); Assert.AreEqual(right_result.TextBody, eml_message.BodyText.Text); Assert.AreEqual(right_result.TextCharset, eml_message.BodyText.Charset); Assert.AreEqual(right_result.TextEncoding, eml_message.BodyText.ContentTransferEncoding); }
protected void Test(string emlFileName) { var mimeMessage = MailClient.ParseMimeMessage(TestFolderPath + emlFileName); var emlMessage = ConvertToRightResult(mimeMessage); var rightResult = RightParserResult.FromXml(RightParserResultsPath + emlFileName.Replace(".eml", ".xml")); #if NEED_OUT mimeMessage.WriteTo(TestFolderPath + emlFileName); #endif Assert.AreEqual(rightResult.From.Email, emlMessage.From.Email); Assert.AreEqual(rightResult.From.Name, emlMessage.From.Name); Assert.AreEqual(rightResult.To.Count, emlMessage.To.Count); var toEnumerator = emlMessage.To.OrderBy(x => x.Email).GetEnumerator(); foreach (var adress in rightResult.To.OrderBy(x => x.Email)) { toEnumerator.MoveNext(); Assert.AreEqual(adress.Email, toEnumerator.Current.Email); Assert.AreEqual(adress.Name, toEnumerator.Current.Name); } var ccEnumerator = emlMessage.Cc.OrderBy(x => x.Email).GetEnumerator(); foreach (var adress in rightResult.Cc.OrderBy(x => x.Email)) { ccEnumerator.MoveNext(); Assert.AreEqual(adress.Email, ccEnumerator.Current.Email); Assert.AreEqual(adress.Name, ccEnumerator.Current.Name); } Assert.AreEqual(rightResult.Subject, emlMessage.Subject); Assert.AreEqual(rightResult.AttachmentCount, emlMessage.AttachmentCount); //Assert.AreEqual(rightResult.UnknownPatsCount, emlMessage.UnknownDispositionMimeParts.Count); Assert.AreEqual(rightResult.TextBody, emlMessage.TextBody); Assert.AreEqual(rightResult.TextCharset, emlMessage.TextCharset); //Assert.AreEqual(rightResult.TextContentDisposition, emlMessage.TextContentDisposition); Assert.AreEqual(rightResult.HtmlBody, emlMessage.HtmlBody); Assert.AreEqual(rightResult.HtmlCharset, emlMessage.HtmlCharset); //Assert.AreEqual(rightResult.HtmlContentDisposition, emlMessage.HtmlContentDisposition); }