2 // CookieCollectionTest.cs - NUnit Test Cases for System.Net.CookieCollection
5 // Lawrence Pit (loz@cable.a2000.nl)
6 // Martin Willemoes Hansen (mwh@sysrq.dk)
8 // (C) 2003 Martin Willemoes Hansen
11 using NUnit
.Framework
;
14 using System
.Collections
;
16 namespace MonoTests
.System
.Net
20 public class CookieCollectionTest
25 public void GetReady ()
27 col
= new CookieCollection ();
28 col
.Add (new Cookie ("name1", "value1"));
29 col
.Add (new Cookie ("name2", "value2", "path2"));
30 col
.Add (new Cookie ("name3", "value3", "path3", "domain3"));
36 Assertion
.AssertEquals ("#1", col
.Count
, 3);
40 public void Indexer ()
45 Assertion
.Fail ("#1");
46 } catch (ArgumentOutOfRangeException
) {
50 Assertion
.Fail ("#2");
51 } catch (ArgumentOutOfRangeException
) {
54 Assertion
.AssertEquals ("#3", c
.Name
, "name1");
56 Assertion
.AssertEquals ("#4", c
.Name
, "name2");
65 Assertion
.Fail ("#1");
66 } catch (ArgumentNullException
) {
69 // in the microsoft implementation this will fail,
70 // so we'll have to fail to.
73 Assertion
.Fail ("#2");
76 Assertion
.AssertEquals ("#3", col
.Count
, 3);
78 col
.Add (new Cookie("name1", "value1"));
79 Assertion
.AssertEquals ("#4", col
.Count
, 3);
81 CookieCollection col2
= new CookieCollection();
82 Cookie c4
= new Cookie("name4", "value4");
83 Cookie c5
= new Cookie("name5", "value5");
87 Assertion
.AssertEquals ("#5", col
.Count
, 5);
88 Assertion
.AssertEquals ("#6", col
["NAME4"], c4
);
89 Assertion
.AssertEquals ("#7", col
[4], c5
);
95 Array a
= Array
.CreateInstance (typeof (Cookie
), 3);
97 Assertion
.AssertEquals ("#1", a
.GetValue (0), col
[0]);
98 Assertion
.AssertEquals ("#2", a
.GetValue (1), col
[1]);
99 Assertion
.AssertEquals ("#3", a
.GetValue (2), col
[2]);
103 public void Enumerator ()
105 IEnumerator enumerator
= col
.GetEnumerator ();
106 enumerator
.MoveNext ();
107 Cookie c
= (Cookie
) enumerator
.Current
;
108 Assertion
.AssertEquals ("#1", c
, col
[0]);
109 col
.Add (new Cookie ("name6", "value6"));
111 enumerator
.MoveNext ();
112 Assertion
.Fail ("#2");
113 } catch (InvalidOperationException
) {