コード例 #1
0
ファイル: StorePermissionCas.cs プロジェクト: Profit0004/mono
		public void ConstructorLevel_Deny_Unrestricted ()
		{
			StorePermission p = new StorePermission (StorePermissionFlags.AllFlags);
			Assert.AreEqual (StorePermissionFlags.AllFlags, p.Flags, "Flags");
			Assert.IsTrue (p.IsUnrestricted (), "IsUnrestricted");
			Assert.IsNotNull (p.Copy (), "Copy");
			SecurityElement se = p.ToXml ();
			Assert.IsNotNull (se, "ToXml");
			p.FromXml (se);
			Assert.IsNotNull (p.Intersect (p), "Intersect");
			Assert.IsTrue (p.IsSubsetOf (p), "IsSubsetOf");
			Assert.IsNotNull (p.Union (p), "Union");
		}
コード例 #2
0
ファイル: StorePermissionCas.cs プロジェクト: Profit0004/mono
		public void ConstructorState_Deny_Unrestricted ()
		{
			StorePermission p = new StorePermission (PermissionState.None);
			Assert.AreEqual (StorePermissionFlags.NoFlags, p.Flags, "Flags");
			Assert.IsFalse (p.IsUnrestricted (), "IsUnrestricted");
			SecurityElement se = p.ToXml ();
			Assert.IsNotNull (se, "ToXml");
			p.FromXml (se);
			Assert.IsTrue (p.IsSubsetOf (p), "IsSubsetOf");
			// strange behaviour of Copy under MS fx 2.0 (returns null for NoFlags)
			p.Copy ();
			p.Intersect (p);
			p.Union (p);
		}
コード例 #3
0
ファイル: StorePermissionTest.cs プロジェクト: nlhepler/mono
		public void Intersect_Unrestricted ()
		{
			// Intersection with unrestricted == Copy
			// a. source (this) is unrestricted
			StorePermission sp1 = new StorePermission (PermissionState.Unrestricted);
			StorePermission sp2 = new StorePermission (PermissionState.None);
			StorePermission result = (StorePermission) sp1.Intersect (sp2);
			Assert.IsNull (result, "target NoFlags");
			for (int i = 1; i < (int) StorePermissionFlags.AllFlags; i++) {
				// 8 isn't a valid value (so we exclude it from the rest of the loop)
				if ((i & 8) == 8)
					continue;
				sp2.Flags = (StorePermissionFlags) i;
				result = (StorePermission) sp1.Intersect (sp2);
				Assert.AreEqual (sp2.Flags, result.Flags, "target " + sp2.Flags.ToString ());
			}
			// b. destination (target) is unrestricted
			sp2.Flags = StorePermissionFlags.NoFlags;
			result = (StorePermission) sp2.Intersect (sp1);
			Assert.IsNull (result, "target NoFlags");
			for (int i = 1; i < (int) StorePermissionFlags.AllFlags; i++) {
				// 8 isn't a valid value (so we exclude it from the rest of the loop)
				if ((i & 8) == 8)
					continue;
				sp2.Flags = (StorePermissionFlags) i;
				result = (StorePermission) sp2.Intersect (sp1);
				Assert.AreEqual (sp2.Flags, result.Flags, "source " + sp2.Flags.ToString ());
			}
		}
コード例 #4
0
ファイル: StorePermissionTest.cs プロジェクト: nlhepler/mono
		public void Intersect_Self ()
		{
			StorePermission sp = new StorePermission (PermissionState.None);
			sp.Flags = StorePermissionFlags.NoFlags; // 0
			StorePermission result = (StorePermission) sp.Intersect (sp);
			Assert.IsNull (result, "NoFlags");
			for (int i = 1; i < (int) StorePermissionFlags.AllFlags; i++) {
				// 8 isn't a valid value (so we exclude it from the rest of the loop)
				if ((i & 8) == 8)
					continue;
				sp.Flags = (StorePermissionFlags) i;
				result = (StorePermission) sp.Intersect (sp);
				Assert.AreEqual (sp.Flags, result.Flags, sp.Flags.ToString ());
			}
		}
コード例 #5
0
ファイル: StorePermissionTest.cs プロジェクト: nlhepler/mono
		public void Intersect_None ()
		{
			StorePermission sp1 = new StorePermission (PermissionState.None);
			StorePermission sp2 = new StorePermission (PermissionState.None);
			for (int i = 0; i < (int) StorePermissionFlags.AllFlags; i++) {
				// 8 isn't a valid value (so we exclude it from the rest of the loop)
				if ((i & 8) == 8)
					continue;
				sp1.Flags = (StorePermissionFlags) i;
				// 1. Intersect None with ppl
				StorePermission result = (StorePermission) sp1.Intersect (sp2);
				Assert.IsNull (result, "None N " + sp1.Flags.ToString ());
				// 2. Intersect ppl with None
				result = (StorePermission) sp2.Intersect (sp1);
				Assert.IsNull (result, sp1.Flags.ToString () + "N None");
			}
		}
コード例 #6
0
ファイル: StorePermissionTest.cs プロジェクト: nlhepler/mono
		public void Intersect_Null ()
		{
			StorePermission sp = new StorePermission (PermissionState.None);
			// No intersection with null
			for (int i = 0; i < (int) StorePermissionFlags.AllFlags; i++) {
				// 8 isn't a valid value (so we exclude it from the rest of the loop)
				if ((i & 8) == 8)
					continue;
				sp.Flags = (StorePermissionFlags) i;
				Assert.IsNull (sp.Intersect (null), sp.Flags.ToString ());
			}
		}