public void FromXml_WrongVersion() { DirectoryServicesPermission dsp = new DirectoryServicesPermission(PermissionState.None); SecurityElement se = dsp.ToXml(); se.Attributes.Remove("version"); se.Attributes.Add("version", "2"); dsp.FromXml(se); }
public void FromXml_NoVersion() { DirectoryServicesPermission dsp = new DirectoryServicesPermission(PermissionState.None); SecurityElement se = dsp.ToXml(); SecurityElement w = new SecurityElement(se.Tag); w.AddAttribute("class", se.Attribute("class")); dsp.FromXml(w); }
public void FromXml_WrongTagCase() { DirectoryServicesPermission dsp = new DirectoryServicesPermission(PermissionState.None); SecurityElement se = dsp.ToXml(); se.Tag = "IPERMISSION"; // instead of IPermission dsp.FromXml(se); // note: normally IPermission classes (in corlib) DO care about the // IPermission tag }
public void FromXml_NoClass() { DirectoryServicesPermission dsp = new DirectoryServicesPermission(PermissionState.None); SecurityElement se = dsp.ToXml(); SecurityElement w = new SecurityElement(se.Tag); w.AddAttribute("version", se.Attribute("version")); dsp.FromXml(w); // doesn't even care of the class attribute presence }
public void FromXml_WrongClass() { DirectoryServicesPermission dsp = new DirectoryServicesPermission(PermissionState.None); SecurityElement se = dsp.ToXml(); SecurityElement w = new SecurityElement(se.Tag); w.AddAttribute("class", "Wrong" + se.Attribute("class")); w.AddAttribute("version", se.Attribute("version")); dsp.FromXml(w); // doesn't care of the class name at that stage // anyway the class has already be created so... }
public void PermissionState_Unrestricted() { PermissionState ps = PermissionState.Unrestricted; DirectoryServicesPermission dsp = new DirectoryServicesPermission(ps); Assert.AreEqual(0, dsp.PermissionEntries.Count, "PermissionEntries"); Assert.IsTrue(dsp.IsUnrestricted(), "IsUnrestricted"); SecurityElement se = dsp.ToXml(); // only class and version are present Assert.AreEqual("true", se.Attribute("Unrestricted"), "Xml-Unrestricted"); Assert.IsNull(se.Children, "Xml-Children"); DirectoryServicesPermission copy = (DirectoryServicesPermission)dsp.Copy(); Assert.IsFalse(Object.ReferenceEquals(dsp, copy), "ReferenceEquals"); Assert.AreEqual(dsp.PermissionEntries.Count, copy.PermissionEntries.Count, "copy-PermissionEntries"); Assert.AreEqual(dsp.IsUnrestricted(), copy.IsUnrestricted(), "copy-IsUnrestricted ()"); }