using System.Security;
using System.Security.Permissions;
-namespace MonoTests.System.Security {
+namespace MonoTests.System.Security {\r
+\r
+ // "alternate" IList implementation\r
+ class TestList : IList {\r
+\r
+ private IList l;\r
+\r
+ public TestList ()\r
+ {\r
+ l = (IList) new ArrayList ();\r
+ }\r
+\r
+ public int Add (object value)\r
+ {\r
+ return l.Add (value);\r
+ }\r
+\r
+ public void Clear ()\r
+ {\r
+ l.Clear ();\r
+ }\r
+\r
+ public bool Contains (object value)\r
+ {\r
+ return l.Contains (value);\r
+ }\r
+\r
+ public int IndexOf (object value)\r
+ {\r
+ return l.IndexOf (value);\r
+ }\r
+\r
+ public void Insert (int index, object value)\r
+ {\r
+ l.Insert (index, value);\r
+ }\r
+\r
+ public bool IsFixedSize {\r
+ get { return l.IsFixedSize; }\r
+ }\r
+\r
+ public bool IsReadOnly {\r
+ get { return l.IsReadOnly; }\r
+ }\r
+\r
+ public void Remove (object value)\r
+ {\r
+ l.Remove (value);\r
+ }\r
+\r
+ public void RemoveAt (int index)\r
+ {\r
+ l.RemoveAt (index);\r
+ }\r
+\r
+ public object this [int index] {\r
+ get { return l [index]; }\r
+ set { l [index] = value; }\r
+ }\r
+\r
+ public void CopyTo (Array array, int index)\r
+ {\r
+ l.CopyTo (array, index);\r
+ }\r
+\r
+ public int Count {\r
+ get { return l.Count; }\r
+ }\r
+\r
+ public bool IsSynchronized {\r
+ get { return l.IsSynchronized; }\r
+ }\r
+\r
+ public object SyncRoot {\r
+ get { return l.SyncRoot; }\r
+ }\r
+\r
+ public IEnumerator GetEnumerator ()\r
+ {\r
+ return l.GetEnumerator ();\r
+ }\r
+ }
[TestFixture]
public class PermissionSetCollectionTest {
PermissionSet ps = psc.GetSet (0);
Assert.AreEqual (unr.ToString (), ps.ToString (), "Same XML");
Assert.IsTrue (Object.ReferenceEquals (unr, ps), "Same Object Reference");
+ }\r
+\r
+ [Test]\r
+ public void PermissionSets_SetArrayList ()\r
+ {\r
+ PermissionSetCollection psc = new PermissionSetCollection ();\r
+ PermissionSet unr = new PermissionSet (PermissionState.Unrestricted);\r
+ psc.Add (unr);\r
+ Assert.AreEqual (1, psc.Count, "original ArrayList");\r
+ psc.PermissionSets = new ArrayList ();\r
+ Assert.AreEqual (0, psc.Count, "new ArrayList");\r
+ }\r
+\r
+ [Test]\r
+ public void PermissionSets_SetTestList ()\r
+ {\r
+ PermissionSetCollection psc = new PermissionSetCollection ();\r
+ psc.PermissionSets = new TestList ();\r
}
[Test]