Author: dna
Date: 2008-01-26 10:54:20 -0500 (Sat, 26 Jan 2008)
New Revision: 93993
Modified:
trunk/mcs/class/System/Test/System.Net/ChangeLog
trunk/mcs/class/System/Test/System.Net/CookieTest.cs
Log:
2008-01-26 Daniel Nauck <[EMAIL PROTECTED]>
* CookieTest.cs: added tests for Cookie.ToString (), see bug #316017,
fixed line endings
Modified: trunk/mcs/class/System/Test/System.Net/ChangeLog
===================================================================
--- trunk/mcs/class/System/Test/System.Net/ChangeLog 2008-01-26 15:34:23 UTC
(rev 93992)
+++ trunk/mcs/class/System/Test/System.Net/ChangeLog 2008-01-26 15:54:20 UTC
(rev 93993)
@@ -1,3 +1,8 @@
+2008-01-26 Daniel Nauck <[EMAIL PROTECTED]>
+
+ * CookieTest.cs: added tests for Cookie.ToString (), see bug #316017,
+ fixed line endings
+
2008-01-17 Zoltan Varga <[EMAIL PROTECTED]>
* HttpWebRequestTest.cs: Disable #353495 since it fails on the 2.0
profile.
Modified: trunk/mcs/class/System/Test/System.Net/CookieTest.cs
===================================================================
--- trunk/mcs/class/System/Test/System.Net/CookieTest.cs 2008-01-26
15:34:23 UTC (rev 93992)
+++ trunk/mcs/class/System/Test/System.Net/CookieTest.cs 2008-01-26
15:54:20 UTC (rev 93993)
@@ -1,159 +1,223 @@
-//
-// CookieTest.cs - NUnit Test Cases for System.Net.Cookie
-//
-// Authors:
-// Lawrence Pit ([EMAIL PROTECTED])
-// Martin Willemoes Hansen ([EMAIL PROTECTED])
-//
-// (C) 2003 Martin Willemoes Hansen
-//
-
-using NUnit.Framework;
-using System;
-using System.Net;
-
-namespace MonoTests.System.Net
-{
-
-[TestFixture]
-public class CookieTest
-{
- [Test]
- public void PublicFields ()
- {
- }
-
- [Test]
- public void Constructors ()
- {
- Cookie c = new Cookie ("somename", null, null, null);
- try {
- c = new Cookie (null, null, null, null);
- Assertion.Fail ("#1: Name cannot be null");
- } catch (CookieException) {
- }
- }
-
- [Test]
- public void Name ()
- {
- Cookie c = new Cookie ("SomeName", "SomeValue");
- Assertion.AssertEquals ("#1", c.Name, "SomeName");
- try {
- c.Name = null;
- Assertion.Fail ("#2a");
- } catch (CookieException) {
- Assertion.AssertEquals ("#2b", "SomeName", c.Name);
- }
- try {
- c.Name = "";
- Assertion.Fail ("#2c");
- } catch (CookieException) {
- Assertion.AssertEquals ("#2d", "SomeName", c.Name);
- }
- try {
- c.Name = " ";
- Assertion.Fail ("#2e");
- } catch (CookieException) {
- // bah! this fails, yet the name is changed..
- // inconsistent with previous test
- Assertion.AssertEquals ("#2f", String.Empty, c.Name);
- }
- try {
- c.Name = "xxx\r\n";
- Assertion.Fail ("#2g");
- } catch (CookieException) {
- Assertion.AssertEquals ("#2h", String.Empty, c.Name);
- }
- try {
- c.Name = "xxx" + (char) 0x80;
- } catch (CookieException) {
- Assertion.Fail ("#2i");
- }
- try {
- c.Name = "$omeName";
- Assertion.Fail ("#3a: Name cannot start with '$'
character");
- } catch (CookieException) {
- Assertion.AssertEquals ("#3b", String.Empty, c.Name);
- }
- c.Name = "SomeName$";
- Assertion.AssertEquals ("#4", c.Name, "SomeName$");
- try {
- c.Name = "Some=Name";
- Assertion.Fail ("#5a: Name cannot contain '='
character");
- } catch (CookieException) {
- Assertion.AssertEquals ("#5b", String.Empty, c.Name);
- }
- c.Name = "domain";
- Assertion.AssertEquals ("#6", c.Name, "domain");
- }
-
- [Test]
- public void Value ()
- {
- // LAMESPEC: According to .Net specs the Value property should
not accept
- // the semicolon and comma characters, yet it does
- /*
- Cookie c = new Cookie("SomeName", "SomeValue");
- try {
- c.Value = "Some;Value";
- Assertion.Fail ("#1: semicolon should not be accepted");
- } catch (CookieException) {
- }
- try {
- c.Value = "Some,Value";
- Assertion.Fail ("#2: comma should not be accepted");
- } catch (CookieException) {
- }
- c.Value = "Some\tValue";
- Assertion.AssertEquals ("#3", c.Value, "Some\tValue");
- */
- }
-
- [Test]
- public void Port ()
- {
- Cookie c = new Cookie ("SomeName", "SomeValue");
- try {
- c.Port = "123";
- Assertion.Fail ("#1: port must start and end with
double quotes");
- } catch (CookieException) {
- }
- try {
- c.Port = "\"123\"";
- } catch (CookieException) {
- Assertion.Fail ("#2");
- }
- try {
- c.Port = "\"123;124\"";
- Assertion.Fail ("#3");
- } catch (CookieException) {
- }
- try {
- c.Port = "\"123,123,124\"";
- } catch (CookieException) {
- Assertion.Fail ("#4");
- }
- try {
- c.Port = "\"123,124\"";
- } catch (CookieException) {
- Assertion.Fail ("#5");
- }
- }
-
- [Test]
- public void Equals ()
- {
- Cookie c1 = new Cookie ("NAME", "VALUE", "PATH", "DOMAIN");
- Cookie c2 = new Cookie ("name", "value", "path", "domain");
- Assertion.Assert("#1", !c1.Equals (c2));
- c2.Value = "VALUE";
- c2.Path = "PATH";
- Assertion.Assert("#2", c1.Equals (c2));
- c2.Version = 1;
- Assertion.Assert("#3", !c1.Equals (c2));
- }
-}
-
-}
-
+//
+// CookieTest.cs - NUnit Test Cases for System.Net.Cookie
+//
+// Authors:
+// Lawrence Pit ([EMAIL PROTECTED])
+// Martin Willemoes Hansen ([EMAIL PROTECTED])
+// Daniel Nauck (dna(at)mono-project(dot)de)
+//
+// (C) 2003 Martin Willemoes Hansen
+//
+
+using NUnit.Framework;
+using System;
+using System.Net;
+
+namespace MonoTests.System.Net
+{
+
+ [TestFixture]
+ public class CookieTest
+ {
+ [Test]
+ public void PublicFields ()
+ {
+ }
+
+ [Test]
+ public void Constructors ()
+ {
+ Cookie c = new Cookie ("somename", null, null, null);
+ try
+ {
+ c = new Cookie (null, null, null, null);
+ Assertion.Fail ("#1: Name cannot be null");
+ }
+ catch (CookieException)
+ {
+ }
+ }
+
+ [Test]
+ public void Name ()
+ {
+ Cookie c = new Cookie ("SomeName", "SomeValue");
+ Assertion.AssertEquals ("#1", c.Name, "SomeName");
+ try
+ {
+ c.Name = null;
+ Assertion.Fail ("#2a");
+ }
+ catch (CookieException)
+ {
+ Assertion.AssertEquals ("#2b", "SomeName",
c.Name);
+ }
+ try
+ {
+ c.Name = "";
+ Assertion.Fail ("#2c");
+ }
+ catch (CookieException)
+ {
+ Assertion.AssertEquals ("#2d", "SomeName",
c.Name);
+ }
+ try
+ {
+ c.Name = " ";
+ Assertion.Fail ("#2e");
+ }
+ catch (CookieException)
+ {
+ // bah! this fails, yet the name is changed..
+ // inconsistent with previous test
+ Assertion.AssertEquals ("#2f", String.Empty,
c.Name);
+ }
+ try
+ {
+ c.Name = "xxx\r\n";
+ Assertion.Fail ("#2g");
+ }
+ catch (CookieException)
+ {
+ Assertion.AssertEquals ("#2h", String.Empty,
c.Name);
+ }
+ try
+ {
+ c.Name = "xxx" + (char)0x80;
+ }
+ catch (CookieException)
+ {
+ Assertion.Fail ("#2i");
+ }
+ try
+ {
+ c.Name = "$omeName";
+ Assertion.Fail ("#3a: Name cannot start with
'$' character");
+ }
+ catch (CookieException)
+ {
+ Assertion.AssertEquals ("#3b", String.Empty,
c.Name);
+ }
+ c.Name = "SomeName$";
+ Assertion.AssertEquals ("#4", c.Name, "SomeName$");
+ try
+ {
+ c.Name = "Some=Name";
+ Assertion.Fail ("#5a: Name cannot contain '='
character");
+ }
+ catch (CookieException)
+ {
+ Assertion.AssertEquals ("#5b", String.Empty,
c.Name);
+ }
+ c.Name = "domain";
+ Assertion.AssertEquals ("#6", c.Name, "domain");
+ }
+
+ [Test]
+ public void Value ()
+ {
+ // LAMESPEC: According to .Net specs the Value property
should not accept
+ // the semicolon and comma characters, yet it does
+ /*
+ Cookie c = new Cookie("SomeName", "SomeValue");
+ try {
+ c.Value = "Some;Value";
+ Assertion.Fail ("#1: semicolon should not be
accepted");
+ } catch (CookieException) {
+ }
+ try {
+ c.Value = "Some,Value";
+ Assertion.Fail ("#2: comma should not be
accepted");
+ } catch (CookieException) {
+ }
+ c.Value = "Some\tValue";
+ Assertion.AssertEquals ("#3", c.Value, "Some\tValue");
+ */
+ }
+
+ [Test]
+ public void Port ()
+ {
+ Cookie c = new Cookie ("SomeName", "SomeValue");
+ try
+ {
+ c.Port = "123";
+ Assertion.Fail ("#1: port must start and end
with double quotes");
+ }
+ catch (CookieException)
+ {
+ }
+ try
+ {
+ c.Port = "\"123\"";
+ }
+ catch (CookieException)
+ {
+ Assertion.Fail ("#2");
+ }
+ try
+ {
+ c.Port = "\"123;124\"";
+ Assertion.Fail ("#3");
+ }
+ catch (CookieException)
+ {
+ }
+ try
+ {
+ c.Port = "\"123,123,124\"";
+ }
+ catch (CookieException)
+ {
+ Assertion.Fail ("#4");
+ }
+ try
+ {
+ c.Port = "\"123,124\"";
+ }
+ catch (CookieException)
+ {
+ Assertion.Fail ("#5");
+ }
+ }
+
+ [Test]
+ public void Equals ()
+ {
+ Cookie c1 = new Cookie ("NAME", "VALUE", "PATH",
"DOMAIN");
+ Cookie c2 = new Cookie ("name", "value", "path",
"domain");
+ Assertion.Assert ("#1", !c1.Equals (c2));
+ c2.Value = "VALUE";
+ c2.Path = "PATH";
+ Assertion.Assert ("#2", c1.Equals (c2));
+ c2.Version = 1;
+ Assertion.Assert ("#3", !c1.Equals (c2));
+ }
+
+ [Test]
+ [Category ("NotWorking")]
+ public void ToStringTest ()
+ {
+ Cookie c1 = new Cookie ("NAME", "VALUE", "/",
"example.com");
+ Assert.AreEqual ("NAME=VALUE", c1.ToString (), "#A1");
+
+ Cookie c2 = new Cookie ();
+ Assert.AreEqual (string.Empty, c2.ToString (), "#A2");
+
+ Cookie c3 = new Cookie("NAME", "VALUE");
+ Assert.AreEqual ("NAME=VALUE", c3.ToString (), "#A3");
+
+ Cookie c4 = new Cookie ("NAME", "VALUE", "/",
"example.com");
+ c4.Version = 1;
+ Assert.AreEqual ("$Version=1; NAME=VALUE; $Path=/;
$Domain=example.com", c4.ToString (), "#A4");
+
+ Cookie c5 = new Cookie ("NAME", "VALUE", "/",
"example.com");
+ c5.Port = "\"8080\"";
+ Assert.AreEqual ("$Version=1; NAME=VALUE; $Path=/;
$Domain=example.com; $Port=\"8080\"", c5.ToString (), "#A5");
+
+ Cookie c6 = new Cookie ("NAME", "VALUE");
+ c6.Version = 1;
+ Assert.AreEqual ("$Version=1; NAME=VALUE", c6.ToString
(), "#A6");
+ }
+ }
+}
\ No newline at end of file
Property changes on: trunk/mcs/class/System/Test/System.Net/CookieTest.cs
___________________________________________________________________
Name: svn:eol-style
+ native
_______________________________________________
Mono-patches maillist - [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches