2 // Tests for System.Web.UI.WebControls.DataKeyArrayTest.cs
5 // Yoni Klein (yonik@mainsoft.com)
8 // Copyright (C) 2005 Novell, Inc (http://www.novell.com)
10 // Permission is hereby granted, free of charge, to any person obtaining
11 // a copy of this software and associated documentation files (the
12 // "Software"), to deal in the Software without restriction, including
13 // without limitation the rights to use, copy, modify, merge, publish,
14 // distribute, sublicense, and/or sell copies of the Software, and to
15 // permit persons to whom the Software is furnished to do so, subject to
16 // the following conditions:
18 // The above copyright notice and this permission notice shall be
19 // included in all copies or substantial portions of the Software.
21 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
22 // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
23 // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
24 // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
25 // LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
26 // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
27 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
32 using System.Collections.Generic;
36 using System.Web.UI.WebControls;
38 using System.Collections;
39 using System.Collections.Specialized;
40 using NUnit.Framework;
44 namespace MonoTests.System.Web.UI.WebControls
47 public class DataKeyArrayTest
51 public void DataKeyArray_DefaultProperty()
53 DataKeyArray keyarray = new DataKeyArray (new ArrayList ());
54 Assert.AreEqual (0, keyarray.Count, "Count");
55 Assert.AreEqual (false, keyarray.IsReadOnly, "IsReadOnly");
56 Assert.AreEqual (false, keyarray.IsSynchronized, "IsSynchronized");
57 //Assert.AreEqual (keyarray, keyarray.SyncRoot, "SyncRoot");
61 public void DataKeyArray_DefaultPropertyNotWorking()
63 DataKeyArray keyarray = new DataKeyArray (new ArrayList ());
64 Assert.AreEqual (keyarray, keyarray.SyncRoot, "SyncRoot");
68 public void DataKeyArray_Item ()
70 OrderedDictionary dictionary = new OrderedDictionary();
71 dictionary.Add("key","value");
72 ArrayList list = new ArrayList ();
73 DataKey key = new DataKey (dictionary);
75 DataKeyArray keyarray = new DataKeyArray (list);
76 Assert.AreEqual(1,keyarray.Count,"CreateItems");
77 Assert.AreEqual (key, keyarray[0], "CreateKeyData");
78 Assert.AreEqual ("value",((DataKey)keyarray[0]).Value,"KeyArrayValue");
79 dictionary.Add ("key1", "value1");
80 key = new DataKey (dictionary);
82 keyarray = new DataKeyArray (list);
83 Assert.AreEqual (2, keyarray.Count, "CreateItemsMulty");
87 public void DataKeyArray_CopyTo ()
89 OrderedDictionary dictionary = new OrderedDictionary ();
90 dictionary.Add ("key", "value");
91 ArrayList list = new ArrayList ();
92 DataKey key = new DataKey (dictionary);
94 DataKeyArray keyarray = new DataKeyArray (list);
95 DataKey[] keys = new DataKey[list.Count];
96 keyarray.CopyTo(keys,0);
97 Assert.AreEqual ("value", keys[0].Value, "CopyToValue");
101 public void DataKeyArray_GetEnumerator ()
103 OrderedDictionary dictionary = new OrderedDictionary ();
104 dictionary.Add ("key", "value");
105 ArrayList list = new ArrayList ();
106 DataKey key = new DataKey (dictionary);
108 DataKeyArray keyarray = new DataKeyArray (list);
109 IEnumerator inumerator = keyarray.GetEnumerator ();
110 Assert.IsNotNull (inumerator, "GetEnumerator");