2005-10-24 Chris Toshok <toshok@ximian.com>
authorChris Toshok <toshok@novell.com>
Mon, 24 Oct 2005 17:30:03 +0000 (17:30 -0000)
committerChris Toshok <toshok@novell.com>
Mon, 24 Oct 2005 17:30:03 +0000 (17:30 -0000)
* System.Configuration/ConfigurationPermissionTest.cs: lots more
tests.

* System.Configuration/KeyValueConfigurationCollectionTest.cs: add
ThrowOnDuplicate check.

svn path=/trunk/mcs/; revision=52135

mcs/class/System.Configuration/Test/ChangeLog
mcs/class/System.Configuration/Test/System.Configuration/ConfigurationPermissionTest.cs
mcs/class/System.Configuration/Test/System.Configuration/KeyValueConfigurationCollectionTest.cs

index 65a0ad0e29ee29ae4e20599af65be485f88899d0..4f464648106cce8365716c94a84fee8d0084af07 100644 (file)
@@ -1,3 +1,11 @@
+2005-10-24  Chris Toshok  <toshok@ximian.com>
+
+       * System.Configuration/ConfigurationPermissionTest.cs: lots more
+       tests.
+
+       * System.Configuration/KeyValueConfigurationCollectionTest.cs: add
+       ThrowOnDuplicate check.
+
 2005-10-12  Chris Toshok  <toshok@ximian.com>
 
        * System.Configuration/ConfigurationPermissionTest.cs: turn the
index 13353eee9505ba5df48b4f610509fa5d57c9b4ed..307677001a19e9b8777704d98a4425a35993546b 100644 (file)
@@ -49,21 +49,111 @@ namespace MonoTests.System.Configuration {
                        Assert.IsFalse (p.IsUnrestricted(), "A2");
                }
 
+               [Test]
+               public void Intersect ()
+               {
+                       ConfigurationPermission p1 = new ConfigurationPermission (PermissionState.Unrestricted);
+                       ConfigurationPermission p2 = new ConfigurationPermission (PermissionState.None);
+
+                       IPermission p3 = p1.Intersect (p2);
+
+                       Assert.AreEqual (typeof (ConfigurationPermission), p3.GetType(), "A1");
+
+                       Assert.IsFalse (((ConfigurationPermission)p3).IsUnrestricted(), "A2");
+               }
+
+               [Test]
+               public void Intersect_null ()
+               {
+                       ConfigurationPermission p1 = new ConfigurationPermission (PermissionState.Unrestricted);
+
+                       IPermission p3 = p1.Intersect (null);
+
+                       Assert.IsNull (p3, "A1");
+               }
+
+               [Test]
+               [ExpectedException (typeof (ArgumentException))]
+               public void Intersect_wrongtype ()
+               {
+                       ConfigurationPermission p1 = new ConfigurationPermission (PermissionState.Unrestricted);
+
+                       IPermission p3 = p1.Intersect (new StrongNameIdentityPermission (PermissionState.Unrestricted));
+               }
+
+               [Test]
+               public void Union ()
+               {
+                       ConfigurationPermission p1 = new ConfigurationPermission (PermissionState.Unrestricted);
+                       ConfigurationPermission p2 = new ConfigurationPermission (PermissionState.None);
+
+                       IPermission p3 = p1.Union (p2);
+
+                       Assert.AreEqual (typeof (ConfigurationPermission), p3.GetType(), "A1");
+
+                       Assert.IsTrue (((ConfigurationPermission)p3).IsUnrestricted(), "A2");
+               }
+
+               [Test]
+               public void Union_null ()
+               {
+                       ConfigurationPermission p1 = new ConfigurationPermission (PermissionState.Unrestricted);
+
+                       IPermission p3 = p1.Union (null);
+
+                       Assert.AreEqual (typeof (ConfigurationPermission), p3.GetType(), "A1");
+
+                       Assert.IsTrue (((ConfigurationPermission)p3).IsUnrestricted(), "A2");
+               }
+
+               [Test]
+               [ExpectedException (typeof (ArgumentException))]
+               public void Union_wrongtypee ()
+               {
+                       ConfigurationPermission p1 = new ConfigurationPermission (PermissionState.Unrestricted);
+
+                       IPermission p3 = p1.Union (new StrongNameIdentityPermission (PermissionState.Unrestricted));
+               }
+
+               [Test]
+               public void Subset ()
+               {
+                       ConfigurationPermission p1 = new ConfigurationPermission (PermissionState.Unrestricted);
+                       ConfigurationPermission p2 = new ConfigurationPermission (PermissionState.None);
+
+                       Assert.IsFalse (p1.IsSubsetOf (p2), "A1");
+                       Assert.IsTrue  (p1.IsSubsetOf (p1), "A2");
+                       Assert.IsTrue  (p2.IsSubsetOf (p1), "A3");
+                       Assert.IsTrue  (p2.IsSubsetOf (p2), "A4");
+
+                       Assert.IsFalse (p1.IsSubsetOf (null), "A5");
+                       Assert.IsTrue (p2.IsSubsetOf (null), "A6");
+               }
+
+               [Test]
+               [ExpectedException (typeof (ArgumentException))]
+               public void Subset_wrongtype ()
+               {
+                       ConfigurationPermission p1 = new ConfigurationPermission (PermissionState.Unrestricted);
+
+                       Assert.IsFalse (p1.IsSubsetOf (new StrongNameIdentityPermission (PermissionState.Unrestricted)));
+               }
+
                [Test]
                public void ToXml ()
                {
                        ConfigurationPermission p = new ConfigurationPermission (PermissionState.Unrestricted);
 
                        Assert.AreEqual(
-                                       "<IPermission class=\"System.Configuration.ConfigurationPermission, System.Configuration, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a\"\r\nversion=\"1\"\r\nUnrestricted=\"true\"/>\r\n",
-                                       p.ToString(), "A1");
+                                       "<IPermission class=\"System.Configuration.ConfigurationPermission, System.Configuration, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a\"\nversion=\"1\"\nUnrestricted=\"true\"/>\n",
+                                       p.ToString().Replace ("\r\n", "\n"), "A1");
 
 
                        p = new ConfigurationPermission (PermissionState.None);
 
                        Assert.AreEqual (
-                                        "<IPermission class=\"System.Configuration.ConfigurationPermission, System.Configuration, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a\"\r\nversion=\"1\"/>\r\n",
-                                        p.ToString(), "A2");
+                                        "<IPermission class=\"System.Configuration.ConfigurationPermission, System.Configuration, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a\"\nversion=\"1\"/>\n",
+                                        p.ToString().Replace ("\r\n", "\n"), "A2");
                }
        }
 }
index cb595106270214ee1a26d2f37a338b9b534fa0cd..8d87e99b17f27932355eafa911613ec48fe834f6 100644 (file)
@@ -69,6 +69,11 @@ namespace MonoTests.System.Configuration {
                        {
                                return base.BaseGetAllKeys();
                        }
+
+                       public bool GetThrowOnDuplicate ()
+                       {
+                               return base.ThrowOnDuplicate;
+                       }
                }
 
                class ElementPoker : KeyValueConfigurationElement
@@ -95,6 +100,13 @@ namespace MonoTests.System.Configuration {
                        }
                }
 
+               [Test]
+               public void ThrowOnDuplicate ()
+               {
+                       Poker p = new Poker ();
+                       Assert.IsFalse (p.GetThrowOnDuplicate (), "A1");
+               }
+
                [Test]
                public void Properties ()
                {