示例#1
0
		private void Check (string msg, NonAbstractDBDataPermission dbdp, bool blank, bool unrestricted, int count)
		{
			Assert.AreEqual (blank, dbdp.AllowBlankPassword, msg + ".AllowBlankPassword");
			Assert.AreEqual (unrestricted, dbdp.IsUnrestricted (), msg + ".IsUnrestricted");
			if (count == 0)
				Assert.IsNull (dbdp.ToXml ().Children, msg + ".Count != 0");
			else
				Assert.AreEqual (count, dbdp.ToXml ().Children.Count, msg + ".Count");
		}
示例#2
0
        public void Union_AllowBlankPassword()
        {
            NonAbstractDBDataPermission ptrue = new NonAbstractDBDataPermission(PermissionState.None);

            ptrue.AllowBlankPassword = true;
            ptrue.Add(defaultConnectString, String.Empty, KeyRestrictionBehavior.AllowOnly);
            NonAbstractDBDataPermission pfalse = new NonAbstractDBDataPermission(PermissionState.None);

            pfalse.AllowBlankPassword = false;
            pfalse.Add(defaultConnectString, String.Empty, KeyRestrictionBehavior.AllowOnly);

            NonAbstractDBDataPermission union = (NonAbstractDBDataPermission)ptrue.Union(ptrue);

            Check("true U true", union, true, false, 1);
            union = (NonAbstractDBDataPermission)ptrue.Union(pfalse);
            Check("true U false", union, true, false, 1);
            union = (NonAbstractDBDataPermission)pfalse.Union(ptrue);
            Check("false U true", union, true, false, 1);
            union = (NonAbstractDBDataPermission)pfalse.Union(pfalse);
            Check("false U false", union, false, false, 1);
        }
示例#3
0
        public void Intersect_AllowBlankPassword()
        {
            NonAbstractDBDataPermission ptrue = new NonAbstractDBDataPermission(PermissionState.None);

            ptrue.AllowBlankPassword = true;
            ptrue.Add(defaultConnectString, String.Empty, KeyRestrictionBehavior.AllowOnly);
            NonAbstractDBDataPermission pfalse = new NonAbstractDBDataPermission(PermissionState.None);

            pfalse.AllowBlankPassword = false;
            pfalse.Add(defaultConnectString, String.Empty, KeyRestrictionBehavior.AllowOnly);

            NonAbstractDBDataPermission intersect = (NonAbstractDBDataPermission)ptrue.Intersect(ptrue);

            Check("true N true", intersect, true, false, 1);
            intersect = (NonAbstractDBDataPermission)ptrue.Intersect(pfalse);
            Check("true N false", intersect, false, false, 1);
            intersect = (NonAbstractDBDataPermission)pfalse.Intersect(ptrue);
            Check("false N true", intersect, false, false, 1);
            intersect = (NonAbstractDBDataPermission)pfalse.Intersect(pfalse);
            Check("false N false", intersect, false, false, 1);
        }
示例#4
0
        public void Union()
        {
            NonAbstractDBDataPermission empty = new NonAbstractDBDataPermission(PermissionState.None);
            NonAbstractDBDataPermission union = (NonAbstractDBDataPermission)empty.Union(empty);

            Assert.IsNotNull(union, "Empty U Empty");

            NonAbstractDBDataPermission dbdp1 = new NonAbstractDBDataPermission(PermissionState.None);

            dbdp1.Add(defaultConnectString, String.Empty, KeyRestrictionBehavior.AllowOnly);
            union = (NonAbstractDBDataPermission)empty.Union(dbdp1);
            Check("Empty U 1", union, false, false, 1);

            NonAbstractDBDataPermission dbdp2 = (NonAbstractDBDataPermission)dbdp1.Copy();

            dbdp2.Add(defaultConnectString2, String.Empty, KeyRestrictionBehavior.AllowOnly);
            union = (NonAbstractDBDataPermission)dbdp1.Union(dbdp2);
            Check("1 U 2", union, false, false, 2);

            NonAbstractDBDataPermission dbdp3 = new NonAbstractDBDataPermission(PermissionState.None);

            dbdp3.Add(defaultConnectString, String.Empty, KeyRestrictionBehavior.PreventUsage);
            union = (NonAbstractDBDataPermission)dbdp2.Union(dbdp3);
            Check("2 U 3", union, false, false, 2);

            NonAbstractDBDataPermission dbdp4 = new NonAbstractDBDataPermission(PermissionState.None);

            dbdp4.Add(defaultConnectString, "Data Source=;", KeyRestrictionBehavior.PreventUsage);
            union = (NonAbstractDBDataPermission)dbdp3.Union(dbdp4);
            Check("3 U 4", union, false, false, 1);

            NonAbstractDBDataPermission unr = new NonAbstractDBDataPermission(PermissionState.Unrestricted);

            union = (NonAbstractDBDataPermission)unr.Union(empty);
            Check("unrestricted U empty", union, false, true, 0);

            union = (NonAbstractDBDataPermission)unr.Union(dbdp4);
            Check("unrestricted U 4", union, false, true, 0);
        }
示例#5
0
        public void IsSubset()
        {
            NonAbstractDBDataPermission empty = new NonAbstractDBDataPermission(PermissionState.None);

            Assert.IsTrue(empty.IsSubsetOf(empty), "Empty-Empty");

            NonAbstractDBDataPermission dbdp1 = new NonAbstractDBDataPermission(PermissionState.None);

            dbdp1.Add(defaultConnectString, String.Empty, KeyRestrictionBehavior.AllowOnly);
            Assert.IsTrue(empty.IsSubsetOf(dbdp1), "Empty-1");
            Assert.IsFalse(dbdp1.IsSubsetOf(empty), "1-Empty");
            Assert.IsTrue(dbdp1.IsSubsetOf(dbdp1), "1-1");

            NonAbstractDBDataPermission dbdp2 = (NonAbstractDBDataPermission)dbdp1.Copy();

            dbdp2.Add(defaultConnectString2, String.Empty, KeyRestrictionBehavior.AllowOnly);
            Assert.IsTrue(dbdp1.IsSubsetOf(dbdp2), "1-2");
            Assert.IsFalse(dbdp2.IsSubsetOf(dbdp1), "2-1");
            Assert.IsTrue(dbdp2.IsSubsetOf(dbdp2), "2-2");

            NonAbstractDBDataPermission dbdp3 = new NonAbstractDBDataPermission(PermissionState.None);

            dbdp3.Add(defaultConnectString, String.Empty, KeyRestrictionBehavior.PreventUsage);
            Assert.IsTrue(dbdp3.IsSubsetOf(dbdp1), "3-1");
            Assert.IsTrue(dbdp1.IsSubsetOf(dbdp3), "1-3");
            Assert.IsTrue(dbdp3.IsSubsetOf(dbdp3), "3-3");

            NonAbstractDBDataPermission unr = new NonAbstractDBDataPermission(PermissionState.Unrestricted);

            Assert.IsTrue(dbdp1.IsSubsetOf(unr), "1-unrestricted");
            Assert.IsFalse(unr.IsSubsetOf(dbdp1), "unrestricted-1");
            Assert.IsTrue(dbdp2.IsSubsetOf(unr), "2-unrestricted");
            Assert.IsFalse(unr.IsSubsetOf(dbdp2), "unrestricted-2");
            Assert.IsTrue(dbdp3.IsSubsetOf(unr), "3-unrestricted");
            Assert.IsFalse(unr.IsSubsetOf(dbdp3), "unrestricted-3");
            Assert.IsTrue(unr.IsSubsetOf(unr), "unrestricted-unrestricted");
        }
示例#6
0
        public void Constructor_DBDataPermissionAttribute()
        {
            DBDataPermissionAttribute a = new NonAbstractDBDataPermissionAttribute(SecurityAction.Assert);

            a.AllowBlankPassword = true;

            NonAbstractDBDataPermission dbdp = new NonAbstractDBDataPermission(a);

            Check("DBDataPermissionAttribute-0", dbdp, true, false, 0);

            a.Unrestricted = true;
            dbdp           = new NonAbstractDBDataPermission(a);
            Check("DBDataPermissionAttribute-1", dbdp, false, true, 0);
            // Unrestricted "bypass" the AllowBlankPassword (so it report false)

            a.ConnectionString = defaultConnectString;
            dbdp = new NonAbstractDBDataPermission(a);
            Check("DBDataPermissionAttribute-2", dbdp, false, true, 0);
            // Unrestricted "bypass" the ConnectionString (so it report 0 childs)

            a.Unrestricted = false;
            dbdp           = new NonAbstractDBDataPermission(a);
            Check("DBDataPermissionAttribute-3", dbdp, true, false, 1);
        }
示例#7
0
 public void Constructor_DBDataPermission_Null()
 {
     DBDataPermission            p    = null;
     NonAbstractDBDataPermission dbdp = new NonAbstractDBDataPermission(p);
 }
示例#8
0
		public void Constructor_DBDataPermission ()
		{
			DBDataPermission p = new NonAbstractDBDataPermission (PermissionState.None);
			p.AllowBlankPassword = true;
			p.Add (defaultConnectString, String.Empty, KeyRestrictionBehavior.AllowOnly);

			NonAbstractDBDataPermission dbdp = new NonAbstractDBDataPermission (p);
			Check ("DBDataPermission", dbdp, true, false, 1);
		}
示例#9
0
		public void AllowBlankPassword ()
		{
			NonAbstractDBDataPermission dbdp = new NonAbstractDBDataPermission (PermissionState.None);
			Assert.IsFalse (dbdp.AllowBlankPassword, "Default");
			dbdp.AllowBlankPassword = true;
			Assert.IsTrue (dbdp.AllowBlankPassword, "True");
			dbdp.Clear ();
			// clear the connection list - not the permission itself
			Assert.IsTrue (dbdp.AllowBlankPassword, "Clear");
			dbdp.AllowBlankPassword = false;
			Assert.IsFalse (dbdp.AllowBlankPassword, "False");
		}
示例#10
0
		public void FromXml_WrongVersion ()
		{
			NonAbstractDBDataPermission elp = new NonAbstractDBDataPermission (PermissionState.None);
			SecurityElement se = elp.ToXml ();
			se.Attributes.Remove ("version");
			se.Attributes.Add ("version", "2");
			elp.FromXml (se);
		}
示例#11
0
		public void FromXml_WrongClass ()
		{
			NonAbstractDBDataPermission elp = new NonAbstractDBDataPermission (PermissionState.None);
			SecurityElement se = elp.ToXml ();

			SecurityElement w = new SecurityElement (se.Tag);
			w.AddAttribute ("class", "Wrong" + se.Attribute ("class"));
			w.AddAttribute ("version", se.Attribute ("version"));
			elp.FromXml (w);
			// doesn't care of the class name at that stage
			// anyway the class has already be created so...
		}
示例#12
0
		public void FromXml_WrongTag ()
		{
			NonAbstractDBDataPermission elp = new NonAbstractDBDataPermission (PermissionState.None);
			SecurityElement se = elp.ToXml ();
			se.Tag = "IMono";
			elp.FromXml (se);
		}
示例#13
0
        public void IsSubsetOf_BadPermission()
        {
            NonAbstractDBDataPermission dbdp = new NonAbstractDBDataPermission(PermissionState.Unrestricted);

            dbdp.IsSubsetOf(new SecurityPermission(SecurityPermissionFlag.Assertion));
        }
示例#14
0
		public void IsSubset_Null ()
		{
			NonAbstractDBDataPermission dbdp = new NonAbstractDBDataPermission (PermissionState.None);
			Assert.IsTrue (dbdp.IsSubsetOf (null), "Empty-null");

			dbdp.Add (defaultConnectString, String.Empty, KeyRestrictionBehavior.AllowOnly);
			Assert.IsFalse (dbdp.IsSubsetOf (null), "Element-null");

			dbdp = new NonAbstractDBDataPermission (PermissionState.Unrestricted);
			Assert.IsFalse (dbdp.IsSubsetOf (null), "Unrestricted-null");
		}
示例#15
0
		public void Intersect_AllowBlankPassword ()
		{
			NonAbstractDBDataPermission ptrue = new NonAbstractDBDataPermission (PermissionState.None);
			ptrue.AllowBlankPassword = true;
			ptrue.Add (defaultConnectString, String.Empty, KeyRestrictionBehavior.AllowOnly);
			NonAbstractDBDataPermission pfalse = new NonAbstractDBDataPermission (PermissionState.None);
			pfalse.AllowBlankPassword = false;
			pfalse.Add (defaultConnectString, String.Empty, KeyRestrictionBehavior.AllowOnly);

			NonAbstractDBDataPermission intersect = (NonAbstractDBDataPermission)ptrue.Intersect (ptrue);
			Check ("true N true", intersect, true, false, 1);
			intersect = (NonAbstractDBDataPermission)ptrue.Intersect (pfalse);
			Check ("true N false", intersect, false, false, 1);
			intersect = (NonAbstractDBDataPermission)pfalse.Intersect (ptrue);
			Check ("false N true", intersect, false, false, 1);
			intersect = (NonAbstractDBDataPermission)pfalse.Intersect (pfalse);
			Check ("false N false", intersect, false, false, 1);
		}
示例#16
0
		public void Intersect ()
		{
			NonAbstractDBDataPermission dbdp1 = new NonAbstractDBDataPermission (PermissionState.None);
			NonAbstractDBDataPermission dbdp2 = new NonAbstractDBDataPermission (PermissionState.None);
			
			// 1. None N None
			NonAbstractDBDataPermission result = (NonAbstractDBDataPermission) dbdp1.Intersect (dbdp2);
			Assert.IsNull (result, "Empty N Empty");
			
			// 2. None N Entry
			dbdp2.Add (defaultConnectString, String.Empty, KeyRestrictionBehavior.AllowOnly);
			result = (NonAbstractDBDataPermission)dbdp1.Intersect (dbdp2);
			Assert.IsNull (result, "Empty N Entry");

			// 3. Entry N None
			result = (NonAbstractDBDataPermission)dbdp2.Intersect (dbdp1);
			Assert.IsNull (result, "Entry N Empty");

			// 4. Unrestricted N None
			NonAbstractDBDataPermission unr = new NonAbstractDBDataPermission (PermissionState.Unrestricted);
			result = (NonAbstractDBDataPermission)unr.Intersect (dbdp1);
			Check ("(Unrestricted N None)", result, false, false, 0);

			// 5. None N Unrestricted
			result = (NonAbstractDBDataPermission)dbdp1.Intersect (unr);
			Check ("(None N Unrestricted)", result, false, false, 0);

			// 6. Unrestricted N Unrestricted
			result = (NonAbstractDBDataPermission)unr.Intersect (unr);
			Check ("(Unrestricted N Unrestricted)", result, false, true, 0);

			// 7. Unrestricted N Entry
			result = (NonAbstractDBDataPermission)unr.Intersect (dbdp2);
			Check ("(Unrestricted N Entry)", result, false, false, 1);

			// 8. Entry N Unrestricted
			result = (NonAbstractDBDataPermission)dbdp2.Intersect (unr);
			Check ("(Entry N Unrestricted)", result, false, false, 1);

			// 9. Entry2 N Entry2
			result = (NonAbstractDBDataPermission)dbdp2.Intersect (dbdp2);
			Check ("(Entry2 N Entry2)", result, false, false, 1);

			// 10. Entry1 N Entry 2
			dbdp1.Add (defaultConnectString2, String.Empty, KeyRestrictionBehavior.PreventUsage);
			result = (NonAbstractDBDataPermission)dbdp1.Intersect (dbdp2);
			Assert.IsNull (result, "(Entry1 N Entry2)");

			// 11. Entry2 N Entry 1
			result = (NonAbstractDBDataPermission)dbdp2.Intersect (dbdp1);
			Assert.IsNull (result, "(Entry2 N Entry1)");
		}
示例#17
0
		public void Intersect_Null ()
		{
			NonAbstractDBDataPermission elp = new NonAbstractDBDataPermission (PermissionState.None);
			// No intersection with null
			Assert.IsNull (elp.Intersect (null), "None N null");
		}
示例#18
0
		public void CreateInstance ()
		{
			NonAbstractDBDataPermission dbdp = new NonAbstractDBDataPermission (PermissionState.Unrestricted);
			Assert.AreEqual (typeof (NonAbstractDBDataPermission), dbdp.CreateInstance ().GetType (), "Same type"); 
		}
示例#19
0
		public void Add_Unrestricted ()
		{
			NonAbstractDBDataPermission dbdp = new NonAbstractDBDataPermission (PermissionState.Unrestricted);
			Assert.IsTrue (dbdp.IsUnrestricted (), "IsUnrestricted-1");
			// we lose unrestricted by adding an element
			dbdp.Add (defaultConnectString, String.Empty, KeyRestrictionBehavior.AllowOnly);
			Assert.IsFalse (dbdp.IsUnrestricted (), "IsUnrestricted-2");
			// removing the element doesn't regain unrestricted status
			dbdp.Clear ();
			Assert.IsFalse (dbdp.IsUnrestricted (), "IsUnrestricted-3");
		}
示例#20
0
        public void CreateInstance()
        {
            NonAbstractDBDataPermission dbdp = new NonAbstractDBDataPermission(PermissionState.Unrestricted);

            Assert.AreEqual(typeof(NonAbstractDBDataPermission), dbdp.CreateInstance().GetType(), "Same type");
        }
示例#21
0
		public void IsSubset ()
		{
			NonAbstractDBDataPermission empty = new NonAbstractDBDataPermission (PermissionState.None);
			Assert.IsTrue (empty.IsSubsetOf (empty), "Empty-Empty");

			NonAbstractDBDataPermission dbdp1 = new NonAbstractDBDataPermission (PermissionState.None);
			dbdp1.Add (defaultConnectString, String.Empty, KeyRestrictionBehavior.AllowOnly);
			Assert.IsTrue (empty.IsSubsetOf (dbdp1), "Empty-1");
			Assert.IsFalse (dbdp1.IsSubsetOf (empty), "1-Empty");
			Assert.IsTrue (dbdp1.IsSubsetOf (dbdp1), "1-1");

			NonAbstractDBDataPermission dbdp2 = (NonAbstractDBDataPermission)dbdp1.Copy ();
			dbdp2.Add (defaultConnectString2, String.Empty, KeyRestrictionBehavior.AllowOnly);
			Assert.IsTrue (dbdp1.IsSubsetOf (dbdp2), "1-2");
			Assert.IsFalse (dbdp2.IsSubsetOf (dbdp1), "2-1");
			Assert.IsTrue (dbdp2.IsSubsetOf (dbdp2), "2-2");

			NonAbstractDBDataPermission dbdp3 = new NonAbstractDBDataPermission (PermissionState.None);
			dbdp3.Add (defaultConnectString, String.Empty, KeyRestrictionBehavior.PreventUsage);
			Assert.IsTrue (dbdp3.IsSubsetOf (dbdp1), "3-1");
			Assert.IsTrue (dbdp1.IsSubsetOf (dbdp3), "1-3");
			Assert.IsTrue (dbdp3.IsSubsetOf (dbdp3), "3-3");

			NonAbstractDBDataPermission unr = new NonAbstractDBDataPermission (PermissionState.Unrestricted);
			Assert.IsTrue (dbdp1.IsSubsetOf (unr), "1-unrestricted");
			Assert.IsFalse (unr.IsSubsetOf (dbdp1), "unrestricted-1");
			Assert.IsTrue (dbdp2.IsSubsetOf (unr), "2-unrestricted");
			Assert.IsFalse (unr.IsSubsetOf (dbdp2), "unrestricted-2");
			Assert.IsTrue (dbdp3.IsSubsetOf (unr), "3-unrestricted");
			Assert.IsFalse (unr.IsSubsetOf (dbdp3), "unrestricted-3");
			Assert.IsTrue (unr.IsSubsetOf (unr), "unrestricted-unrestricted");
		}
示例#22
0
		public void Add_Differents ()
		{
			NonAbstractDBDataPermission dbdp = new NonAbstractDBDataPermission (PermissionState.None);
			dbdp.Add (defaultConnectString, String.Empty, KeyRestrictionBehavior.AllowOnly);
			string connectString = "Data Source=127.0.0.1;Integrated Security=SSPI;Initial Catalog=Northwind;";
			dbdp.Add (connectString, String.Empty, KeyRestrictionBehavior.AllowOnly);
			Assert.AreEqual (2, dbdp.ToXml ().Children.Count, "Count");

			dbdp.Clear ();
			Assert.IsNull (dbdp.ToXml ().Children, "Clear");
		}
示例#23
0
		public void IsSubsetOf_AllowBlankPassword ()
		{
			NonAbstractDBDataPermission ptrue = new NonAbstractDBDataPermission (PermissionState.None);
			ptrue.AllowBlankPassword = true;
			ptrue.Add (defaultConnectString, String.Empty, KeyRestrictionBehavior.AllowOnly);
			NonAbstractDBDataPermission pfalse = new NonAbstractDBDataPermission (PermissionState.None);
			pfalse.AllowBlankPassword = false;
			pfalse.Add (defaultConnectString, String.Empty, KeyRestrictionBehavior.AllowOnly);

			Assert.IsTrue (ptrue.IsSubsetOf (ptrue), "true subsetof true");
			Assert.IsFalse (ptrue.IsSubsetOf (pfalse), "true subsetof false");
			Assert.IsTrue (pfalse.IsSubsetOf (ptrue), "false subsetof true");
			Assert.IsTrue (pfalse.IsSubsetOf (pfalse), "false subsetof false");
		}
示例#24
0
		public void FromXml_WrongTagCase ()
		{
			NonAbstractDBDataPermission elp = new NonAbstractDBDataPermission (PermissionState.None);
			SecurityElement se = elp.ToXml ();
			se.Tag = "IPERMISSION"; // instead of IPermission
			elp.FromXml (se);
		}
示例#25
0
		public void IsSubsetOf_BothEmpty_KeyRestrictionBehavior ()
		{
			NonAbstractDBDataPermission pAllow = new NonAbstractDBDataPermission (PermissionState.None);
			pAllow.Add (defaultConnectString, String.Empty, KeyRestrictionBehavior.AllowOnly);
			NonAbstractDBDataPermission pPrevent = new NonAbstractDBDataPermission (PermissionState.None);
			pPrevent.Add (defaultConnectString, String.Empty, KeyRestrictionBehavior.PreventUsage);

			Assert.IsTrue (pAllow.IsSubsetOf (pAllow), "BothEmpty - pAllow subsetof pAllow");
			Assert.IsTrue (pAllow.IsSubsetOf (pPrevent), "BothEmpty - pAllow subsetof pPrevent");
			Assert.IsTrue (pPrevent.IsSubsetOf (pAllow), "BothEmpty - pPrevent subsetof pAllow");
			Assert.IsTrue (pPrevent.IsSubsetOf (pPrevent), "BothEmpty - pPrevent subsetof pPrevent");
		}
示例#26
0
		public void FromXml_NoClass ()
		{
			NonAbstractDBDataPermission elp = new NonAbstractDBDataPermission (PermissionState.None);
			SecurityElement se = elp.ToXml ();

			SecurityElement w = new SecurityElement (se.Tag);
			w.AddAttribute ("version", se.Attribute ("version"));
			elp.FromXml (w);
			// doesn't even care of the class attribute presence
		}
示例#27
0
		public void IsSubsetOf_AllowPreventSame_KeyRestrictionBehavior ()
		{
			NonAbstractDBDataPermission pAllow = new NonAbstractDBDataPermission (PermissionState.None);
			pAllow.Add (defaultConnectString, "password=;", KeyRestrictionBehavior.AllowOnly);
			NonAbstractDBDataPermission pPrevent = new NonAbstractDBDataPermission (PermissionState.None);
			pPrevent.Add (defaultConnectString, "password=;", KeyRestrictionBehavior.PreventUsage);

			Assert.IsTrue (pAllow.IsSubsetOf (pAllow), "AllowPreventSame - pAllow subsetof pAllow");
			Assert.IsTrue (pAllow.IsSubsetOf (pPrevent), "AllowPreventSame - pAllow subsetof pPrevent");
			Assert.IsTrue (pPrevent.IsSubsetOf (pAllow), "AllowPreventSame - pPrevent subsetof pAllow");
			Assert.IsTrue (pPrevent.IsSubsetOf (pPrevent), "AllowPreventSame - pPrevent subsetof pPrevent");
		}
示例#28
0
		public void FromXml_NoVersion ()
		{
			NonAbstractDBDataPermission elp = new NonAbstractDBDataPermission (PermissionState.None);
			SecurityElement se = elp.ToXml ();

			SecurityElement w = new SecurityElement (se.Tag);
			w.AddAttribute ("class", se.Attribute ("class"));
			elp.FromXml (w);
		}
示例#29
0
		public void IsSubsetOf_AllowPreventDifferent_KeyRestrictionBehavior ()
		{
			NonAbstractDBDataPermission pAllow1 = new NonAbstractDBDataPermission (PermissionState.None);
			pAllow1.Add (defaultConnectString, "security=;", KeyRestrictionBehavior.AllowOnly);
			NonAbstractDBDataPermission pAllow2 = new NonAbstractDBDataPermission (PermissionState.None);
			pAllow2.Add (defaultConnectString, "password=;", KeyRestrictionBehavior.AllowOnly);
			NonAbstractDBDataPermission pPrevent1 = new NonAbstractDBDataPermission (PermissionState.None);
			pPrevent1.Add (defaultConnectString, "security=;", KeyRestrictionBehavior.PreventUsage);
			NonAbstractDBDataPermission pPrevent2 = new NonAbstractDBDataPermission (PermissionState.None);
			pPrevent2.Add (defaultConnectString, "password=;", KeyRestrictionBehavior.PreventUsage);

			Assert.IsTrue (pAllow1.IsSubsetOf (pAllow1), "AllowPreventDifferent - pAllow subsetof pAllow");
			Assert.IsTrue (pAllow1.IsSubsetOf (pPrevent2), "AllowPreventDifferent - pAllow subsetof pPrevent");
			Assert.IsTrue (pPrevent1.IsSubsetOf (pAllow2), "AllowPreventDifferent - pPrevent subsetof pAllow");
			Assert.IsTrue (pPrevent1.IsSubsetOf (pPrevent2), "AllowPreventDifferent - pPrevent subsetof pPrevent");
		}
示例#30
0
		public void Constructor_DBDataPermission_Null ()
		{
			DBDataPermission p = null;
			NonAbstractDBDataPermission dbdp = new NonAbstractDBDataPermission (p);
		}
示例#31
0
		public void IsSubsetOf_BadPermission ()
		{
			NonAbstractDBDataPermission dbdp = new NonAbstractDBDataPermission (PermissionState.Unrestricted);
			dbdp.IsSubsetOf (new SecurityPermission (SecurityPermissionFlag.Assertion));
		}
示例#32
0
        public void Constructor_Empty()
        {
            NonAbstractDBDataPermission dbdp = new NonAbstractDBDataPermission();

            Check("Empty", dbdp, false, false, 0);
        }
示例#33
0
		public void Union_Null ()
		{
			NonAbstractDBDataPermission dbdp = new NonAbstractDBDataPermission (PermissionState.None);
			NonAbstractDBDataPermission union = (NonAbstractDBDataPermission) dbdp.Union (null);
			Check ("Empty U null", dbdp, false, false, 0);

			dbdp.AllowBlankPassword = true;
			dbdp.Add (defaultConnectString, String.Empty, KeyRestrictionBehavior.AllowOnly);
			union = (NonAbstractDBDataPermission) dbdp.Union (null);
			Check ("Element U null", dbdp, true, false, 1);

			dbdp = new NonAbstractDBDataPermission (PermissionState.Unrestricted);
			union = (NonAbstractDBDataPermission) dbdp.Union (null);
			Check ("Unrestricted U null", dbdp, false, true, 0);
		}
示例#34
0
 public void Constructor_DBDataPermissionAttribute_Null()
 {
     DBDataPermissionAttribute   a    = null;
     NonAbstractDBDataPermission dbdp = new NonAbstractDBDataPermission(a);
 }
示例#35
0
		public void Union ()
		{
			NonAbstractDBDataPermission empty = new NonAbstractDBDataPermission (PermissionState.None);
			NonAbstractDBDataPermission union = (NonAbstractDBDataPermission) empty.Union (empty);
			Assert.IsNull (union, "Empty U Empty");

			NonAbstractDBDataPermission dbdp1 = new NonAbstractDBDataPermission (PermissionState.None);
			dbdp1.Add (defaultConnectString, String.Empty, KeyRestrictionBehavior.AllowOnly);
			union = (NonAbstractDBDataPermission) empty.Union (dbdp1);
			Check ("Empty U 1", union, false, false, 1);

			NonAbstractDBDataPermission dbdp2 = (NonAbstractDBDataPermission)dbdp1.Copy ();
			dbdp2.Add (defaultConnectString2, String.Empty, KeyRestrictionBehavior.AllowOnly);
			union = (NonAbstractDBDataPermission) dbdp1.Union (dbdp2);
			Check ("1 U 2", union, false, false, 2);

			NonAbstractDBDataPermission dbdp3 = new NonAbstractDBDataPermission (PermissionState.None);
			dbdp3.Add (defaultConnectString, String.Empty, KeyRestrictionBehavior.PreventUsage);
			union = (NonAbstractDBDataPermission) dbdp2.Union (dbdp3);
			Check ("2 U 3", union, false, false, 2);

			NonAbstractDBDataPermission dbdp4 = new NonAbstractDBDataPermission (PermissionState.None);
			dbdp4.Add (defaultConnectString, "Data Source=;", KeyRestrictionBehavior.PreventUsage);
			union = (NonAbstractDBDataPermission) dbdp3.Union (dbdp4);
			Check ("3 U 4", union, false, false, 1);

			NonAbstractDBDataPermission unr = new NonAbstractDBDataPermission (PermissionState.Unrestricted);
			union = (NonAbstractDBDataPermission) unr.Union (empty);
			Check ("unrestricted U empty", union, false, true, 0);

			union = (NonAbstractDBDataPermission)unr.Union (dbdp4);
			Check ("unrestricted U 4", union, false, true, 0);
		}
示例#36
0
 public void Constructor_PermissionState_Invalid()
 {
     PermissionState             ps   = (PermissionState)Int32.MinValue;
     NonAbstractDBDataPermission dbdp = new NonAbstractDBDataPermission(ps);
 }
示例#37
0
        public void Union_BadPermission()
        {
            NonAbstractDBDataPermission dbdp1 = new NonAbstractDBDataPermission(PermissionState.Unrestricted);

            dbdp1.Union(new SecurityPermission(SecurityPermissionFlag.Assertion));
        }
示例#38
0
		public void Add ()
		{
			NonAbstractDBDataPermission dbdp = new NonAbstractDBDataPermission (PermissionState.None);
			dbdp.Add (defaultConnectString, String.Empty, KeyRestrictionBehavior.AllowOnly);
			Assert.AreEqual (1, dbdp.ToXml ().Children.Count, "Count");

			NonAbstractDBDataPermission copy = (NonAbstractDBDataPermission)dbdp.Copy ();
			Assert.AreEqual (1, copy.ToXml ().Children.Count, "Copy.Count");

			dbdp.Clear ();
			Assert.IsNull (dbdp.ToXml ().Children, "Clear");
			Assert.AreEqual (1, copy.ToXml ().Children.Count, "Copy.Count-2");
		}
示例#39
0
		public void FromXml_Null ()
		{
			NonAbstractDBDataPermission elp = new NonAbstractDBDataPermission (PermissionState.None);
			elp.FromXml (null);
		}
示例#40
0
		public void Union_AllowBlankPassword ()
		{
			NonAbstractDBDataPermission ptrue = new NonAbstractDBDataPermission (PermissionState.None);
			ptrue.AllowBlankPassword = true;
			ptrue.Add (defaultConnectString, String.Empty, KeyRestrictionBehavior.AllowOnly);
			NonAbstractDBDataPermission pfalse = new NonAbstractDBDataPermission (PermissionState.None);
			pfalse.AllowBlankPassword = false;
			pfalse.Add (defaultConnectString, String.Empty, KeyRestrictionBehavior.AllowOnly);

			NonAbstractDBDataPermission union = (NonAbstractDBDataPermission) ptrue.Union (ptrue);
			Check ("true U true", union, true, false, 1);
			union = (NonAbstractDBDataPermission)ptrue.Union (pfalse);
			Check ("true U false", union, true, false, 1);
			union = (NonAbstractDBDataPermission)pfalse.Union (ptrue);
			Check ("false U true", union, true, false, 1);
			union = (NonAbstractDBDataPermission)pfalse.Union (pfalse);
			Check ("false U false", union, false, false, 1);
		}
示例#41
0
		public void Add_Duplicates ()
		{
			NonAbstractDBDataPermission dbdp = new NonAbstractDBDataPermission (PermissionState.None);
			dbdp.Add (defaultConnectString, String.Empty, KeyRestrictionBehavior.AllowOnly);
			dbdp.Add (defaultConnectString, String.Empty, KeyRestrictionBehavior.AllowOnly);
			// no exception but a single element is kept
			Assert.AreEqual (1, dbdp.ToXml ().Children.Count, "Count");
			dbdp.Add (defaultConnectString, String.Empty, KeyRestrictionBehavior.PreventUsage);

			dbdp.Clear ();
			Assert.IsNull (dbdp.ToXml ().Children, "Clear");
		}
示例#42
0
        public void FromXml_Null()
        {
            NonAbstractDBDataPermission elp = new NonAbstractDBDataPermission(PermissionState.None);

            elp.FromXml(null);
        }
示例#43
0
		public void Union_BadPermission ()
		{
			NonAbstractDBDataPermission dbdp1 = new NonAbstractDBDataPermission (PermissionState.Unrestricted);
			dbdp1.Union (new SecurityPermission (SecurityPermissionFlag.Assertion));
		}