Sfoglia il codice sorgente

2008-02-09 Daniel Nauck <[email protected]>

	* CookieContainerTest.cs: added some not working Add/Expired tests


svn path=/trunk/mcs/; revision=95332
Daniel Nauck 18 anni fa
parent
commit
1533e98656

+ 4 - 0
mcs/class/System/Test/System.Net/ChangeLog

@@ -1,3 +1,7 @@
+2008-02-09  Daniel Nauck  <[email protected]>
+
+	* CookieContainerTest.cs: added some not working Add/Expired tests
+
 2008-02-09  Daniel Nauck  <[email protected]>
 
 	* CookieTest.cs: added tests for public fields

+ 107 - 0
mcs/class/System/Test/System.Net/CookieContainerTest.cs

@@ -3,6 +3,7 @@
 //
 // Authors:
 // 	Gonzalo Paniagua Javier ([email protected])
+//      Daniel Nauck    (dna(at)mono-project(dot)de)
 //
 // (c) Copyright 2004 Novell, Inc. (http://www.novell.com)
 //
@@ -196,6 +197,112 @@ namespace MonoTests.System.Net
 			Assert.AreEqual (0, cookie.Version, "#12");
 		}
 
+		[Test]
+		[Category ("NotWorking")]
+		public void TestAddExpired_Cookie ()
+		{
+			CookieContainer cc = new CookieContainer ();
+			Uri uri = new Uri ("http://www.contoso.com");
+			DateTime expires = DateTime.Now.Subtract (new TimeSpan (1, 30, 0));
+
+			//expired cookie
+			Cookie c1 = new Cookie ("TEST", "MyValue", "/", uri.Host);
+			c1.Expires = expires;
+			cc.Add (c1);
+			Assert.AreEqual (1, cc.Count, "#A1");
+			CookieCollection coll = cc.GetCookies (uri);
+			Assert.AreEqual (1, coll.Count, "#A1.1");
+			Cookie cookie = coll [0];
+			Assert.AreEqual ("", cookie.Comment, "#A2");
+			Assert.IsNull (cookie.CommentUri, "#A3");
+			Assert.AreEqual ("www.contoso.com", cookie.Domain, "#A4");
+			Assert.IsFalse (cookie.Expired, "#A5");
+			Assert.AreEqual (DateTime.MinValue, cookie.Expires, "#A6");
+			Assert.AreEqual ("TEST", cookie.Name, "#A7");
+			Assert.AreEqual ("MyValue", cookie.Value, "#A8");
+			Assert.AreEqual ("/", cookie.Path, "#A9");
+			Assert.AreEqual ("", cookie.Port, "#A10");
+			Assert.IsFalse (cookie.Secure, "#A11");
+
+			//expired cookie
+			Cookie c2 = new Cookie ("TEST2", "MyValue2");
+			c2.Expires = expires;
+			cc.Add (uri, c2);
+			Assert.AreEqual (1, cc.Count, "#B1");
+			coll = cc.GetCookies (uri);
+			Assert.AreEqual (1, coll.Count, "#B1.1");
+			cookie = coll [0];
+			Assert.AreEqual ("", cookie.Comment, "#B2");
+			Assert.IsNull (cookie.CommentUri, "#B3");
+			Assert.AreEqual ("www.contoso.com", cookie.Domain, "#B4");
+			Assert.IsFalse (cookie.Expired, "#B5");
+			Assert.AreEqual (DateTime.MinValue, cookie.Expires, "#B6");
+			Assert.AreEqual ("TEST", cookie.Name, "#B7");
+			Assert.AreEqual ("MyValue", cookie.Value, "#B8");
+			Assert.AreEqual ("/", cookie.Path, "#B9");
+			Assert.AreEqual ("", cookie.Port, "#B10");
+			Assert.IsFalse (cookie.Secure, "#B11");
+
+			//not expired cookie
+			Cookie c3 = new Cookie ("TEST3", "MyValue3");
+			cc.Add (uri, c3);
+			Assert.AreEqual (2, cc.Count, "#C1");
+			coll = cc.GetCookies (uri);
+			Assert.AreEqual (2, coll.Count, "#C1.1");
+			cookie = coll [1];
+			Assert.AreEqual ("", cookie.Comment, "#C2");
+			Assert.IsNull (cookie.CommentUri, "#C3");
+			Assert.AreEqual ("www.contoso.com", cookie.Domain, "#C4");
+			Assert.IsFalse (cookie.Expired, "#C5");
+			Assert.AreEqual (DateTime.MinValue, cookie.Expires, "#C6");
+			Assert.AreEqual ("TEST3", cookie.Name, "#C7");
+			Assert.AreEqual ("MyValue3", cookie.Value, "#C8");
+			Assert.AreEqual ("/", cookie.Path, "#C9");
+			Assert.AreEqual ("", cookie.Port, "#C10");
+			Assert.IsFalse (cookie.Secure, "#C11");
+
+			Assert.AreEqual (2, cc.Count, "#D1");
+			coll = cc.GetCookies (new Uri("http://contoso.com"));
+			Assert.AreEqual (0, coll.Count, "#D1.1");
+
+			//not expired cookie
+			Cookie c4 = new Cookie ("TEST4", "MyValue4", "/", ".contoso.com");
+			cc.Add (uri, c4);
+			Assert.AreEqual (3, cc.Count, "#E1");
+			coll = cc.GetCookies (uri);
+			Assert.AreEqual (3, coll.Count, "#E1.1");
+
+			//expired cookie
+			Cookie c5 = new Cookie ("TEST5", "MyValue5", "/", ".contoso.com");
+			c5.Expires = expires;
+			cc.Add (c5);
+			Assert.AreEqual (4, cc.Count, "#F1");
+			coll = cc.GetCookies (uri);
+			Assert.AreEqual (4, coll.Count, "#F1.1");
+			cookie = coll ["TEST5"];
+			Assert.AreEqual (".contoso.com", cookie.Domain, "#F2");
+			Assert.IsFalse (cookie.Expired, "#F3");
+			Assert.AreEqual (DateTime.MinValue, cookie.Expires, "#F4");
+			Assert.AreEqual ("TEST5", cookie.Name, "#F5");
+			Assert.AreEqual ("MyValue5", cookie.Value, "#F6");
+			Assert.AreEqual ("/", cookie.Path, "#F7");
+
+			//expired cookie
+			Cookie c6 = new Cookie ("TEST6", "MyValue6", "/", ".contoso.com");
+			c5.Expires = expires;
+			cc.Add (uri, c6);
+			Assert.AreEqual (5, cc.Count, "#G1");
+			coll = cc.GetCookies (uri);
+			Assert.AreEqual (5, coll.Count, "#G1.1");
+			cookie = coll ["TEST6"];
+			Assert.AreEqual (".contoso.com", cookie.Domain, "#G2");
+			Assert.IsFalse (cookie.Expired, "#G3");
+			Assert.AreEqual (DateTime.MinValue, cookie.Expires, "#G4");
+			Assert.AreEqual ("TEST6", cookie.Name, "#G5");
+			Assert.AreEqual ("MyValue6", cookie.Value, "#G6");
+			Assert.AreEqual ("/", cookie.Path, "#G7");
+		}
+
 		[Test]
 		public void TestGetCookies_Args ()
 		{