2 // ContentDispositionTest.cs - NUnit Test Cases for System.Net.Mime.ContentDisposition
5 // John Luke (john.luke@gmail.com)
12 using NUnit.Framework;
14 using System.Net.Mime;
16 namespace MonoTests.System.Net.Mime
19 public class ContentDispositionTest
21 ContentDisposition cd;
24 public void GetReady ()
26 cd = new ContentDisposition ();
27 cd.FileName = "genome.jpeg";
28 cd.ModificationDate = DateTime.MaxValue;
32 public void DispositionType ()
34 Assert.AreEqual ("attachment", cd.DispositionType);
38 [ExpectedException (typeof (ArgumentNullException))]
39 public void DispositionTypeNull ()
41 cd.DispositionType = null;
45 [ExpectedException (typeof (ArgumentException))]
46 public void DispositionTypeEmpty ()
48 cd.DispositionType = "";
52 public void EqualsHashCode ()
54 ContentDisposition dummy1 = new ContentDisposition ();
56 ContentDisposition dummy2 = new ContentDisposition ("inline");
57 Assert.IsTrue (dummy1.Equals (dummy2));
58 Assert.IsFalse (dummy1 == dummy2);
59 Assert.IsTrue (dummy1.GetHashCode () == dummy2.GetHashCode ());
65 ContentDisposition dummy1 = new ContentDisposition ();
66 dummy1.FileName = "genome.jpeg";
67 ContentDisposition dummy2 = new ContentDisposition ("attachment; filename=genome.jpeg");
68 Assert.IsTrue (dummy1.Equals (dummy2));
72 public void FileName ()
74 Assert.AreEqual ("genome.jpeg", cd.FileName);
80 Assert.AreEqual (-1, cd.Size);
84 [ExpectedException (typeof (ArgumentNullException))]
85 public void ArgumentNullException ()
87 new ContentDisposition (null);
91 [ExpectedException (typeof (FormatException))]
92 public void FormatException ()
94 new ContentDisposition ("");
98 public void NoFormatException ()
100 new ContentDisposition ("attachment; foo=bar");
104 public void IsInline ()
106 Assert.IsFalse (cd.Inline);
110 public void Parameters ()
112 Assert.IsNotNull (cd.Parameters, "is not null");
113 Assert.AreEqual (2, cd.Parameters.Count);
117 public void ToStringTest ()
119 string rfc822 = "dd MMM yyyy HH':'mm':'ss zz00";
120 string modification_date = DateTime.MaxValue.ToString (rfc822);
121 Assert.AreEqual ("attachment; modification-date=\"" + modification_date + "\"; filename=genome.jpeg", cd.ToString ());
125 public void ToStringTest2 ()
127 ContentDisposition dummy = new ContentDisposition ();
128 Assert.AreEqual ("attachment", dummy.ToString ());
132 public void ToStringTest3 ()
134 ContentDisposition dummy = new ContentDisposition ();
136 Assert.AreEqual ("attachment; size=0", dummy.ToString ());
140 public void ToStringTest4 ()
142 ContentDisposition dummy = new ContentDisposition ("attachment");
143 dummy.Parameters.Add ("foo", "bar");
144 Assert.AreEqual (1, dummy.Parameters.Count);
145 Assert.AreEqual ("attachment; foo=bar", dummy.ToString ());