public MultipartReport Build() { // Initiate multipart var multipart = new MultipartReport("disposition-notification"); // Insert text part var textPart = new TextPart(); textPart.ContentTransferEncoding = ContentEncoding.SevenBit; textPart.SetText(Encoding.ASCII, this.sw.ToString()); textPart.ContentTransferEncoding = ContentEncoding.SevenBit; multipart.Add(textPart); // Insert header part var headerPart = new MessageDispositionNotification(); headerPart.ContentTransferEncoding = ContentEncoding.Default; foreach (var header in this.headers) { headerPart.Fields.Add(header); } headerPart.ContentTransferEncoding = ContentEncoding.SevenBit; multipart.Add(headerPart); return(multipart); }
public void TestSerializedContent() { const string expected = "Reporting-UA: joes-pc.cs.example.com; Foomail 97.1\nOriginal-Recipient: rfc822;[email protected]\nFinal-Recipient: rfc822;[email protected]\nOriginal-Message-ID: <*****@*****.**>\nDisposition: manual-action/MDN-sent-manually; displayed\n\n"; var mdn = new MessageDispositionNotification(); mdn.Fields.Add("Reporting-UA", "joes-pc.cs.example.com; Foomail 97.1"); mdn.Fields.Add("Original-Recipient", "rfc822;[email protected]"); mdn.Fields.Add("Final-Recipient", "rfc822;[email protected]"); mdn.Fields.Add("Original-Message-ID", "<*****@*****.**>"); mdn.Fields.Add("Disposition", "manual-action/MDN-sent-manually; displayed"); using (var memory = new MemoryStream()) { mdn.Content.DecodeTo(memory); var text = Encoding.ASCII.GetString(memory.GetBuffer(), 0, (int)memory.Length).Replace("\r\n", "\n"); Assert.AreEqual(expected, text); } }
public void TestArgumentExceptions() { var mdn = new MessageDispositionNotification(); Assert.Throws <ArgumentNullException> (() => mdn.Accept(null)); }
public HeaderList GetMdnFields() { MessageDispositionNotification bp = this.GetMessageDispositionNotificationPart(); return(bp.Fields); }
protected internal override void VisitMessageDispositionNotification(MessageDispositionNotification entity) { MessageDispositionNotification++; base.VisitMessageDispositionNotification(entity); }