public void FromXml_NoVersion () { ServiceControllerPermission scp = new ServiceControllerPermission (PermissionState.None); SecurityElement se = scp.ToXml (); SecurityElement w = new SecurityElement (se.Tag); w.AddAttribute ("class", se.Attribute ("class")); scp.FromXml (w); }
public void FromXml_WrongVersion () { ServiceControllerPermission scp = new ServiceControllerPermission (PermissionState.None); SecurityElement se = scp.ToXml (); se.Attributes.Remove ("version"); se.Attributes.Add ("version", "2"); scp.FromXml (se); }
public void FromXml_NoClass () { ServiceControllerPermission scp = new ServiceControllerPermission (PermissionState.None); SecurityElement se = scp.ToXml (); SecurityElement w = new SecurityElement (se.Tag); w.AddAttribute ("version", se.Attribute ("version")); scp.FromXml (w); // doesn't even care of the class attribute presence }
public void FromXml_WrongClass () { ServiceControllerPermission scp = new ServiceControllerPermission (PermissionState.None); SecurityElement se = scp.ToXml (); SecurityElement w = new SecurityElement (se.Tag); w.AddAttribute ("class", "Wrong" + se.Attribute ("class")); w.AddAttribute ("version", se.Attribute ("version")); scp.FromXml (w); // doesn't care of the class name at that stage // anyway the class has already be created so... }
public void FromXml_WrongTagCase () { ServiceControllerPermission scp = new ServiceControllerPermission (PermissionState.None); SecurityElement se = scp.ToXml (); se.Tag = "IPERMISSION"; // instead of IPermission scp.FromXml (se); // note: normally IPermission classes (in corlib) DO care about the // IPermission tag }
public void FromXml_Null () { ServiceControllerPermission scp = new ServiceControllerPermission (PermissionState.None); scp.FromXml (null); }