public void PermissionStateUnrestricted()
        {
            // In 2.0 Unrestricted are permitted for identity permissions
            SiteIdentityPermission sip = new SiteIdentityPermission(PermissionState.Unrestricted);

            Assert.AreEqual(String.Empty, sip.Site, "Site");
            SecurityElement se = sip.ToXml();

            Assert.AreEqual(3, se.Attributes.Count, "Xml-Attributes");
            Assert.IsNull(se.Children, "Xml-Children");
            SiteIdentityPermission copy = (SiteIdentityPermission)sip.Copy();

            Assert.IsFalse(Object.ReferenceEquals(sip, copy), "ReferenceEquals");
            // and they aren't equals to None
            Assert.IsFalse(sip.Equals(new SiteIdentityPermission(PermissionState.None)));
        }
        public void Union_Different()
        {
            SiteIdentityPermission sip1   = new SiteIdentityPermission(GoodSites [0]);
            SiteIdentityPermission sip2   = new SiteIdentityPermission(GoodSites [1]);
            SiteIdentityPermission result = (SiteIdentityPermission)sip1.Union(sip2);

            Assert.IsNotNull(result, "Mono U Novell");
            // new XML format is used to contain more than one site
            SecurityElement se = result.ToXml();

            Assert.AreEqual(2, se.Children.Count, "Childs");
            Assert.AreEqual((se.Children [0] as SecurityElement).Attribute("Site"), sip1.Site, "Site#1");
            Assert.AreEqual((se.Children [1] as SecurityElement).Attribute("Site"), sip2.Site, "Site#2");
            // strangely it is still versioned as 'version="1"'.
            Assert.AreEqual("1", se.Attribute("version"), "Version");
        }
Example #3
0
        public void Union_Self()
        {
            SiteIdentityPermission sip   = new SiteIdentityPermission(PermissionState.None);
            SiteIdentityPermission union = (SiteIdentityPermission)sip.Union(sip);

#if NET_2_0
            Assert.IsNull(union, "None U None");
#else
            Assert.IsNotNull(union, "None U None"); // can't get null Site property
            foreach (string s in GoodSites)
            {
                sip.Site = s;
                union    = (SiteIdentityPermission)sip.Union(sip);
                Assert.AreEqual(s, union.Site, s);
            }
#endif
        }
Example #4
0
        public void Site_Bad()
        {
            SiteIdentityPermission sip = new SiteIdentityPermission(PermissionState.None);

            foreach (string s in BadSites)
            {
                try
                {
                    sip.Site = s;
                    Assert.Fail(s + " isn't a bad site!");
                }
                catch (ArgumentException)
                {
                    // expected, continue looping
                }
            }
        }
Example #5
0
        public void Intersect_None()
        {
            SiteIdentityPermission sip1   = new SiteIdentityPermission(PermissionState.None);
            SiteIdentityPermission sip2   = new SiteIdentityPermission(PermissionState.None);
            SiteIdentityPermission result = (SiteIdentityPermission)sip1.Intersect(sip2);

            Assert.IsNull(result, "None N None");
            foreach (string s in GoodSites)
            {
                sip1.Site = s;
                // 1. Intersect None with site
                result = (SiteIdentityPermission)sip1.Intersect(sip2);
                Assert.IsNull(result, "None N " + s);
                // 2. Intersect site with None
                result = (SiteIdentityPermission)sip2.Intersect(sip1);
                Assert.IsNull(result, s + "N None");
            }
        }
Example #6
0
        public void Site_AllGoMonoSite()
        {
            Site s = new Site("*.example.com");

            Assert.AreEqual("*.example.com", s.Name, "Name");
            Assert.AreEqual("<System.Security.Policy.Site version=\"1\">" + Environment.NewLine + "<Name>*.example.com</Name>" + Environment.NewLine + "</System.Security.Policy.Site>" + Environment.NewLine, s.ToString(), "ToString");
            Site s2 = (Site)s.Copy();

            Assert.AreEqual(s.Name, s2.Name, "Copy.Name");
            Assert.AreEqual(s.GetHashCode(), s2.GetHashCode(), "Copy.GetHashCode");

            SiteIdentityPermission sip = (SiteIdentityPermission)s.CreateIdentityPermission(null);

            Assert.AreEqual(s.Name, sip.Site, "CreateIdentityPermission");

            Assert.IsTrue(s.Equals(s2), "Equals");
            Site s3 = new Site("example.com");

            Assert.IsTrue(!s.Equals(s3), "!Equals");
        }
Example #7
0
        public void IsSubset_None()
        {
            // IsSubset with none
            // a. source (this) is none -> target is never a subset
            SiteIdentityPermission sip1 = new SiteIdentityPermission(PermissionState.None);
            SiteIdentityPermission sip2 = new SiteIdentityPermission(PermissionState.None);

            foreach (string s in GoodSites)
            {
                sip1.Site = s;
                Assert.IsFalse(sip1.IsSubsetOf(sip2), "target " + s);
            }
            sip1 = new SiteIdentityPermission(PermissionState.None);
            // b. destination (target) is none -> target is always a subset
            foreach (string s in GoodSites)
            {
                sip2.Site = s;
                Assert.IsFalse(sip2.IsSubsetOf(sip1), "source " + s);
            }
        }
Example #8
0
        public void Site_GoMonoWebSite()
        {
            Site s = new Site("www.go-mono.com");

            Assert.AreEqual("www.go-mono.com", s.Name, "Name");
#if NET_2_0
            Assert.AreEqual("<System.Security.Policy.Site version=\"1\">" + Environment.NewLine + "<Name>www.go-mono.com</Name>" + Environment.NewLine + "</System.Security.Policy.Site>" + Environment.NewLine, s.ToString(), "ToString");
#else
            Assert.AreEqual("<System.Security.Policy.Site version=\"1\">" + Environment.NewLine + "   <Name>www.go-mono.com</Name>" + Environment.NewLine + "</System.Security.Policy.Site>" + Environment.NewLine, s.ToString(), "ToString");
#endif
            Site s2 = (Site)s.Copy();
            Assert.AreEqual(s.Name, s2.Name, "Copy.Name");
            Assert.AreEqual(s.GetHashCode(), s2.GetHashCode(), "Copy.GetHashCode");

            SiteIdentityPermission sip = (SiteIdentityPermission)s.CreateIdentityPermission(null);
            Assert.AreEqual(s.Name, sip.Site, "CreateIdentityPermission");

            Assert.IsTrue(s.Equals(s2), "Equals");
            Site s3 = new Site("go-mono.com");
            Assert.IsTrue(!s.Equals(s3), "!Equals");
        }
Example #9
0
        public void Union_None()
        {
            // Union with none is same
            SiteIdentityPermission sip1 = new SiteIdentityPermission(PermissionState.None);
            SiteIdentityPermission sip2 = new SiteIdentityPermission(PermissionState.None);

            // a. source (this) is none
            foreach (string s in GoodSites)
            {
                sip1.Site = s;
                SiteIdentityPermission union = (SiteIdentityPermission)sip1.Union(sip2);
                Assert.AreEqual(s, union.Site, s);
            }
            sip1 = new SiteIdentityPermission(PermissionState.None);
            // b. destination (target) is none
            foreach (string s in GoodSites)
            {
                sip2.Site = s;
                SiteIdentityPermission union = (SiteIdentityPermission)sip2.Union(sip1);
                Assert.AreEqual(s, union.Site, s);
            }
        }
Example #10
0
 public static void SiteIdentityPermissionCallMethods()
 {
     SiteIdentityPermission sip = new SiteIdentityPermission(new Permissions.PermissionState());
     SiteIdentityPermission sip2 = new SiteIdentityPermission("testsite");
     IPermission ip = sip.Copy();
     IPermission ip2 = sip.Intersect(ip);
     bool testbool = sip.IsSubsetOf(ip);
     ip2 = sip.Union(ip);
     SecurityElement se = new SecurityElement("");
     sip.FromXml(se);
     se = sip.ToXml();
 }
Example #11
0
 public void PermissionState_Bad()
 {
     SiteIdentityPermission sip = new SiteIdentityPermission((PermissionState)Int32.MinValue);
 }
Example #12
0
        public void FromXml_Null()
        {
            SiteIdentityPermission sip = new SiteIdentityPermission(PermissionState.None);

            sip.FromXml(null);
        }
Example #13
0
        public void Site_Null()
        {
            SiteIdentityPermission sip = new SiteIdentityPermission(PermissionState.None);

            sip.Site = null;
        }
Example #14
0
 public void SiteIdentityPermission_EmptySite()
 {
     SiteIdentityPermission sip = new SiteIdentityPermission(String.Empty);
 }
Example #15
0
 public void SiteIdentityPermission_NullSite()
 {
     SiteIdentityPermission sip = new SiteIdentityPermission(null);
 }
Example #16
0
 public void PermissionState_Unrestricted()
 {
     SiteIdentityPermission sip = new SiteIdentityPermission(PermissionState.Unrestricted);
 }