public void TestSerializationAndDeserialization()
        {
            var message = new MimeMessage();

            message.From.Add(new MailboxAddress("Sender Name", "*****@*****.**"));
            message.To.Add(new MailboxAddress("Recipient Name", "*****@*****.**"));
            message.Subject = "Content of a text/rfc822-headers part";

            var rfc822headers = new TextRfc822Headers(new Header(HeaderId.ContentId, "<id@localhost>"), message);

            message = new MimeMessage();
            message.From.Add(new MailboxAddress("Postmaster", "*****@*****.**"));
            message.To.Add(new MailboxAddress("Sender Name", "*****@*****.**"));
            message.Subject = "Sorry, but your message bounced";
            message.Body    = rfc822headers;

            using (var stream = new MemoryStream()) {
                message.WriteTo(stream);
                stream.Position = 0;

                message = MimeMessage.Load(stream);

                var visitor = new TextRfc822HeadersVisitor();
                visitor.Visit(message);

                Assert.IsNotNull(visitor.Rfc822Headers, "Rfc822Headers");
                Assert.AreEqual("id@localhost", visitor.Rfc822Headers.ContentId, "ContentId");
            }
        }
        public void TestArgumentExceptions()
        {
            var entity = new TextRfc822Headers();

            Assert.Throws <ArgumentException> (() => new TextRfc822Headers("unknown-parameter"));
            Assert.Throws <ArgumentException> (() => new TextRfc822Headers(new MimeMessage(), new MimeMessage()));

            Assert.Throws <ArgumentNullException> (() => entity.Accept(null));
        }
 protected internal override void VisitTextRfc822Headers(TextRfc822Headers entity)
 {
     Rfc822Headers = entity;
 }
示例#4
0
 protected internal override void VisitTextRfc822Headers(TextRfc822Headers entity)
 {
     TextRfc822Headers++;
     base.VisitTextRfc822Headers(entity);
 }