public void Union_None()
        {
            // Union with none is same
            PrintingPermission pp1   = new PrintingPermission(PermissionState.None);
            PrintingPermission pp2   = new PrintingPermission(PermissionState.None);
            PrintingPermission union = null;

            // a. source (this) is none
            pp2.Level = PrintingPermissionLevel.NoPrinting;
            union     = (PrintingPermission)pp1.Union(pp2);
            Assert.IsNull(union, "target NoPrinting");
            foreach (PrintingPermissionLevel ppl in AllLevelExceptNoAndAllLevel)
            {
                pp2.Level = ppl;
                union     = (PrintingPermission)pp1.Union(pp2);
                Assert.IsFalse(union.IsUnrestricted(), "target " + ppl.ToString());
            }
            pp2.Level = PrintingPermissionLevel.AllPrinting;
            union     = (PrintingPermission)pp1.Union(pp2);
            Assert.IsTrue(union.IsUnrestricted(), "target AllPrinting");

            // b. destination (target) is none
            pp2.Level = PrintingPermissionLevel.NoPrinting;
            union     = (PrintingPermission)pp2.Union(pp1);
            Assert.IsNull(union, "source NoPrinting");
            foreach (PrintingPermissionLevel ppl in AllLevelExceptNoAndAllLevel)
            {
                pp2.Level = ppl;
                union     = (PrintingPermission)pp2.Union(pp1);
                Assert.IsFalse(union.IsUnrestricted(), "source " + ppl.ToString());
            }
            pp2.Level = PrintingPermissionLevel.AllPrinting;
            union     = (PrintingPermission)pp2.Union(pp1);
            Assert.IsTrue(union.IsUnrestricted(), "source AllPrinting");
        }
Пример #2
0
        public void Unrestricted()
        {
            PrintingPermissionAttribute a = new PrintingPermissionAttribute(SecurityAction.Assert);

            a.Unrestricted = true;
            PrintingPermission wp = (PrintingPermission)a.CreatePermission();

            Assert.IsTrue(wp.IsUnrestricted(), "IsUnrestricted");
            Assert.AreEqual(PrintingPermissionLevel.NoPrinting, a.Level, "NoPrinting");

            a.Unrestricted = false;
            wp             = (PrintingPermission)a.CreatePermission();
            Assert.IsFalse(wp.IsUnrestricted(), "!IsUnrestricted");
        }
        public void PermissionState_Unrestricted()
        {
            PermissionState    ps = PermissionState.Unrestricted;
            PrintingPermission pp = new PrintingPermission(ps);

            Assert.AreEqual(PrintingPermissionLevel.AllPrinting, pp.Level, "Level");
            Assert.IsTrue(pp.IsUnrestricted(), "IsUnrestricted");

            SecurityElement se = pp.ToXml();

            // only class and version are present
            Assert.AreEqual("true", se.Attribute("Unrestricted"), "Xml-Unrestricted");
            Assert.IsNull(se.Children, "Xml-Children");

            PrintingPermission copy = (PrintingPermission)pp.Copy();

            Assert.IsFalse(Object.ReferenceEquals(pp, copy), "ReferenceEquals");
            Assert.AreEqual(pp.Level, copy.Level, "Level");
            Assert.AreEqual(pp.IsUnrestricted(), copy.IsUnrestricted(), "IsUnrestricted ()");
        }
Пример #4
0
        public void Default()
        {
            PrintingPermissionAttribute a = new PrintingPermissionAttribute(SecurityAction.Assert);

            Assert.AreEqual(a.ToString(), a.TypeId.ToString(), "TypeId");
            Assert.IsFalse(a.Unrestricted, "Unrestricted");
            Assert.AreEqual(PrintingPermissionLevel.NoPrinting, a.Level, "PrintingPermissionLevel");

            PrintingPermission sp = (PrintingPermission)a.CreatePermission();

            Assert.IsFalse(sp.IsUnrestricted(), "IsUnrestricted");
        }
Пример #5
0
        }// GetTextForIndex

        protected override void PutValuesinPage()
        {
            // Put in the text for the radio buttons
            m_radUnrestricted.Text             = CResourceStore.GetString("PrintingPermission:GrantUnrestrict");
            m_radGrantFollowingPermission.Text = CResourceStore.GetString("PrintingPermission:GrantFollowing");

            m_cbOptions.Items.Clear();
            m_cbOptions.Items.Add(CResourceStore.GetString("PrintingPermission:NoPrinting"));
            m_cbOptions.Items.Add(CResourceStore.GetString("PrintingPermission:SafePrinting"));
            m_cbOptions.Items.Add(CResourceStore.GetString("PrintingPermission:DefaultPrinting"));
            m_cbOptions.Items.Add(CResourceStore.GetString("PrintingPermission:AllPrinting"));

            PrintingPermission perm = (PrintingPermission)m_perm;

            CheckUnrestricted(perm);

            if (!perm.IsUnrestricted())
            {
                if ((perm.Level & PrintingPermissionLevel.AllPrinting) == PrintingPermissionLevel.AllPrinting)
                {
                    m_cbOptions.SelectedIndex = 3;
                }
                else if ((perm.Level & PrintingPermissionLevel.DefaultPrinting) == PrintingPermissionLevel.DefaultPrinting)
                {
                    m_cbOptions.SelectedIndex = 2;
                }
                else if ((perm.Level & PrintingPermissionLevel.SafePrinting) == PrintingPermissionLevel.SafePrinting)
                {
                    m_cbOptions.SelectedIndex = 1;
                }
                else
                {
                    m_cbOptions.SelectedIndex = 0;
                }
            }
            else
            {
                m_cbOptions.SelectedIndex = 3;
            }

            onOptionChange(null, null);
        }// PutValuesinPage
        public void Union_Unrestricted()
        {
            // Union with unrestricted is unrestricted
            PrintingPermission sp1 = new PrintingPermission(PermissionState.Unrestricted);
            PrintingPermission sp2 = new PrintingPermission(PermissionState.None);

            // a. source (this) is unrestricted
            foreach (PrintingPermissionLevel ppl in AllLevel)
            {
                sp2.Level = ppl;
                PrintingPermission union = (PrintingPermission)sp1.Union(sp2);
                Assert.IsTrue(union.IsUnrestricted(), "target " + ppl.ToString());
            }
            // b. destination (target) is unrestricted
            foreach (PrintingPermissionLevel ppl in AllLevel)
            {
                sp2.Level = ppl;
                PrintingPermission union = (PrintingPermission)sp2.Union(sp1);
                Assert.IsTrue(union.IsUnrestricted(), "source " + ppl.ToString());
            }
        }