summaryrefslogtreecommitdiff
path: root/mcs/class/System/Test/System.Net.Mail/AlternateViewTest.cs
blob: 5fe2745c861950d407f3dc451a2ed0934ba04ec4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
//
// AlternateViewTest.cs - NUnit Test Cases for System.Net.MailAddress.AlternateView
//
// Authors:
//   John Luke (john.luke@gmail.com)
//
// (C) 2005 John Luke
//
#if NET_2_0
using NUnit.Framework;
using System;
using System.IO;
using System.Net.Mail;
using System.Net.Mime;

namespace MonoTests.System.Net.Mail
{
	[TestFixture]
	public class AlternateViewTest
	{
		AlternateView av;
		
		[SetUp]
		public void GetReady ()
		{
			av = AlternateView.CreateAlternateViewFromString ("test", new ContentType ("text/plain"));
		}

		[Test]
		[ExpectedException (typeof (ArgumentNullException))]
		public void ArgumentNullException ()
		{
			string s = null;
			new AlternateView (s);
		}

		[Test]
		[ExpectedException (typeof (ArgumentNullException))]
		public void ArgumentNullException2 ()
		{
			Stream s = null;
			new AlternateView (s);
		}

		[Test]
		public void ContentType ()
		{
			Assert.IsNotNull (av.ContentType);
			Assert.IsTrue (av.ContentType.MediaType == "text/plain");
		}

		[Test]
		public void ContentType2 ()
		{
			AlternateView av = new AlternateView (new MemoryStream ());
			Assert.IsNotNull (av.ContentType, "#1");
			Assert.AreEqual ("application/octet-stream", av.ContentType.MediaType, "#2");
		}

		[Test]
		public void ContentStream ()
		{
			Assert.IsNotNull (av.ContentStream);
			Assert.IsTrue (av.ContentStream.Length == 4);
		}

		[Test]
		public void TransferEncodingTest ()
		{
			Assert.AreEqual (TransferEncoding.QuotedPrintable, av.TransferEncoding, "#1");

			MemoryStream ms = new MemoryStream (new byte [] {1, 2, 3});
			Assert.AreEqual (TransferEncoding.Base64, new AlternateView (ms).TransferEncoding, "#2");
			Assert.AreEqual (TransferEncoding.Base64, new AlternateView (ms, "text/plain").TransferEncoding, "#3");
		}

		[Test]
		public void CreateAlternateViewFromStringEncodingNull ()
		{
			AlternateView.CreateAlternateViewFromString ("<p>test message</p>", null, "text/html");
		}
	}
}
#endif