// Sebastien Pouliot <sebastien@ximian.com>
//
// (C) 2003 Motus Technologies Inc. (http://www.motus.com)
-// Copyright (C) 2004 Novell, Inc (http://www.novell.com)
+// Copyright (C) 2004-2005 Novell, Inc (http://www.novell.com)
//
// Permission is hereby granted, free of charge, to any person obtaining
// a copy of this software and associated documentation files (the
AssertEquals ("SecurityPermission", SecurityPermissionFlag.AllFlags, (result as SecurityPermission).Flags);
AssertEquals ("1", 1, ps.Count);
Assert ("State", !ps.IsUnrestricted ());
- }
+ }\r
+\r
+ [Test]\r
+ public void AddPermission_NonCasPermission ()\r
+ {\r
+ PermissionSet ps = new PermissionSet (PermissionState.None);\r
+ ps.AddPermission (new PrincipalPermission ("name", "role"));\r
+ AssertEquals ("Count", 1, ps.Count);\r
+ Assert ("IsEmpty", !ps.IsEmpty ());\r
+ }\r
+\r
+ [Test]\r
+ public void AddPermission_NonCasPermissionNone ()\r
+ {\r
+ PermissionSet ps = new PermissionSet (PermissionState.None);\r
+ ps.AddPermission (new PrincipalPermission (PermissionState.None));\r
+ AssertEquals ("Count", 1, ps.Count);\r
+ Assert ("IsEmpty", ps.IsEmpty ());\r
+ }\r
+\r
+ [Test]\r
+ public void AddPermission_NonCasPermissionUnrestricted ()\r
+ {\r
+ PermissionSet ps = new PermissionSet (PermissionState.None);\r
+ ps.AddPermission (new PrincipalPermission (PermissionState.Unrestricted));\r
+ AssertEquals ("Count", 1, ps.Count);\r
+ Assert ("IsEmpty", !ps.IsEmpty ());\r
+ }\r
[Test]
public void AddPermission_NoCopy ()
ups2.AddPermission (zip);
Assert ("UPS1Z.IsSubset(UPS2Z)", ups1.IsSubsetOf (ups2));
Assert ("UPS2Z.IsSubset(UPS1Z)", ups2.IsSubsetOf (ups1));
+ }\r
+\r
+ [Test]\r
+ public void IsSubset_NonCasPermission ()\r
+ {\r
+ PermissionSet ps1 = new PermissionSet (PermissionState.None);\r
+ ps1.AddPermission (new PrincipalPermission ("name", "role"));\r
+ PermissionSet ps2 = new PermissionSet (PermissionState.None);\r
+ Assert ("PS1.IsSubset(null)", !ps1.IsSubsetOf (null));\r
+ Assert ("PS1.IsSubset(None)", !ps1.IsSubsetOf (ps2));\r
+ Assert ("None.IsSubset(PS1)", ps2.IsSubsetOf (ps1));\r
+\r
+ PermissionSet ps3 = ps1.Copy ();\r
+ Assert ("PS1.IsSubset(PS3)", ps1.IsSubsetOf (ps3));\r
+ Assert ("PS3.IsSubset(PS1)", ps3.IsSubsetOf (ps1));\r
+\r
+ PermissionSet ups1 = new PermissionSet (PermissionState.Unrestricted);\r
+#if NET_2_0\r
+ Assert ("PS1.IsSubset(Unrestricted)", ps1.IsSubsetOf (ups1));\r
+#else
+ Assert ("PS1.IsSubset(Unrestricted)", !ps1.IsSubsetOf (ups1));\r
+#endif\r
+ Assert ("Unrestricted.IsSubset(PS1)", !ups1.IsSubsetOf (ps1));\r
+ }\r
+\r
+ [Test]\r
+ public void IsSubset_NonCasPermission_None ()\r
+ {\r
+ PermissionSet ps1 = new PermissionSet (PermissionState.None);\r
+ ps1.AddPermission (new PrincipalPermission (PermissionState.None));\r
+ PermissionSet ps2 = new PermissionSet (PermissionState.None);\r
+ Assert ("PS1.IsSubset(null)", ps1.IsSubsetOf (null));\r
+ Assert ("PS1.IsSubset(None)", ps1.IsSubsetOf (ps2));\r
+ Assert ("None.IsSubset(PS1)", ps2.IsSubsetOf (ps1));\r
+\r
+ PermissionSet ps3 = ps1.Copy ();\r
+ Assert ("PS1.IsSubset(PS3)", ps1.IsSubsetOf (ps3));\r
+ Assert ("PS3.IsSubset(PS1)", ps3.IsSubsetOf (ps1));\r
+\r
+ PermissionSet ups1 = new PermissionSet (PermissionState.Unrestricted);\r
+ Assert ("PS1.IsSubset(Unrestricted)", ps1.IsSubsetOf (ups1));\r
+ Assert ("Unrestricted.IsSubset(PS1)", !ups1.IsSubsetOf (ps1));\r
+ }
+\r
+ [Test]\r
+ public void IsSubset_NonCasPermission_Unrestricted ()\r
+ {\r
+ PermissionSet ps1 = new PermissionSet (PermissionState.None);\r
+ ps1.AddPermission (new PrincipalPermission (PermissionState.Unrestricted));\r
+ PermissionSet ps2 = new PermissionSet (PermissionState.None);\r
+ Assert ("PS1.IsSubset(null)", !ps1.IsSubsetOf (null));\r
+ Assert ("PS1.IsSubset(None)", !ps1.IsSubsetOf (ps2));\r
+ Assert ("None.IsSubset(PS1)", ps2.IsSubsetOf (ps1));\r
+\r
+ PermissionSet ps3 = ps1.Copy ();\r
+ Assert ("PS1.IsSubset(PS3)", ps1.IsSubsetOf (ps3));\r
+ Assert ("PS3.IsSubset(PS1)", ps3.IsSubsetOf (ps1));\r
+\r
+ PermissionSet ups1 = new PermissionSet (PermissionState.Unrestricted);\r
+#if NET_2_0\r
+ Assert ("PS1.IsSubset(Unrestricted)", ps1.IsSubsetOf (ups1));\r
+#else
+ Assert ("PS1.IsSubset(Unrestricted)", !ps1.IsSubsetOf (ups1));\r
+#endif\r
+ Assert ("Unrestricted.IsSubset(PS1)", !ups1.IsSubsetOf (ps1));\r
}
[Test]