public void FromXml_WrongVersion()
        {
            EventLogPermission elp = new EventLogPermission(PermissionState.None);
            SecurityElement    se  = elp.ToXml();

            se.Attributes.Remove("version");
            se.Attributes.Add("version", "2");
            elp.FromXml(se);
        }
        public void FromXml_NoVersion()
        {
            EventLogPermission elp = new EventLogPermission(PermissionState.None);
            SecurityElement    se  = elp.ToXml();

            SecurityElement w = new SecurityElement(se.Tag);

            w.AddAttribute("class", se.Attribute("class"));
            elp.FromXml(w);
        }
        public void FromXml_WrongTagCase()
        {
            EventLogPermission elp = new EventLogPermission(PermissionState.None);
            SecurityElement    se  = elp.ToXml();

            se.Tag = "IPERMISSION"; // instead of IPermission
            elp.FromXml(se);
            // note: normally IPermission classes (in corlib) DO care about the
            // IPermission tag
        }
        public void FromXml_NoClass()
        {
            EventLogPermission elp = new EventLogPermission(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
        }
        public void FromXml_WrongClass()
        {
            EventLogPermission elp = new EventLogPermission(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...
        }
        public void FromXml_Null()
        {
            EventLogPermission elp = new EventLogPermission(PermissionState.None);

            elp.FromXml(null);
        }