2 // ContentDispositionTest.cs - NUnit Test Cases for System.Net.Mime.ContentDisposition
5 // John Luke (john.luke@gmail.com)
11 using NUnit.Framework;
13 using System.Net.Mime;
15 namespace MonoTests.System.Net.Mime
18 public class ContentDispositionTest
20 ContentDisposition cd;
23 public void GetReady ()
25 cd = new ContentDisposition ();
26 cd.FileName = "genome.jpeg";
27 cd.ModificationDate = DateTime.MaxValue;
31 public void DispositionType ()
33 Assert.AreEqual ("attachment", cd.DispositionType);
37 [ExpectedException (typeof (ArgumentNullException))]
38 public void DispositionTypeNull ()
40 cd.DispositionType = null;
44 [ExpectedException (typeof (ArgumentException))]
45 public void DispositionTypeEmpty ()
47 cd.DispositionType = "";
51 public void EqualsHashCode ()
53 ContentDisposition dummy1 = new ContentDisposition ();
55 ContentDisposition dummy2 = new ContentDisposition ("inline");
56 Assert.IsTrue (dummy1.Equals (dummy2));
57 Assert.IsFalse (dummy1 == dummy2);
58 Assert.IsTrue (dummy1.GetHashCode () == dummy2.GetHashCode ());
64 ContentDisposition dummy1 = new ContentDisposition ();
65 dummy1.FileName = "genome.jpeg";
66 ContentDisposition dummy2 = new ContentDisposition ("attachment; filename=genome.jpeg");
67 Assert.IsTrue (dummy1.Equals (dummy2));
71 public void FileName ()
73 Assert.AreEqual ("genome.jpeg", cd.FileName);
79 Assert.AreEqual (-1, cd.Size);
83 [ExpectedException (typeof (ArgumentNullException))]
84 public void ArgumentNullException ()
86 new ContentDisposition (null);
90 [ExpectedException (typeof (FormatException))]
91 public void FormatException ()
93 new ContentDisposition ("");
97 public void NoFormatException ()
99 new ContentDisposition ("attachment; foo=bar");
103 public void IsInline ()
105 Assert.IsFalse (cd.Inline);
109 public void Parameters ()
111 Assert.IsNotNull (cd.Parameters, "is not null");
112 Assert.AreEqual (2, cd.Parameters.Count);
116 public void ToStringTest ()
118 string rfc822 = "dd MMM yyyy HH':'mm':'ss zz00";
119 string modification_date = DateTime.MaxValue.ToString (rfc822);
120 string to_string = cd.ToString ();
121 Assert.IsTrue (to_string.StartsWith ("attachment; "), "#1");
122 Assert.IsTrue (to_string.Contains ("modification-date=\"" + modification_date + "\""), "#2");
123 Assert.IsTrue (to_string.Contains ("filename=genome.jpeg"), "#3");
127 public void ToStringTest2 ()
129 ContentDisposition dummy = new ContentDisposition ();
130 Assert.AreEqual ("attachment", dummy.ToString ());
134 public void ToStringTest3 ()
136 ContentDisposition dummy = new ContentDisposition ();
138 Assert.AreEqual ("attachment; size=0", dummy.ToString ());
142 public void ToStringTest4 ()
144 ContentDisposition dummy = new ContentDisposition ("attachment");
145 dummy.Parameters.Add ("foo", "bar");
146 Assert.AreEqual (1, dummy.Parameters.Count);
147 Assert.AreEqual ("attachment; foo=bar", dummy.ToString ());