2 // PermissionRequestEvidenceTest.cs - NUnit Test Cases for PermissionRequestEvidence
\r
5 // Nick Drochak (ndrochak@gol.com)
\r
7 // (C) 2004 Nick Drochak
\r
10 using NUnit.Framework;
\r
12 using System.Security;
\r
13 using System.Security.Permissions;
\r
14 using System.Security.Policy;
\r
16 namespace MonoTests.System.Security.Policy {
\r
19 public class PermissionRequestEvidenceTest : Assertion {
\r
21 private string AdjustNewLine (string s)
\r
23 if (Environment.NewLine != "\r\n")
\r
24 s = s.Replace ("\r\n", Environment.NewLine);
\r
29 public void NullConstructor () {
\r
30 PermissionRequestEvidence pre = new PermissionRequestEvidence (null, null, null);
\r
31 AssertNull ("Requested", pre.RequestedPermissions);
\r
32 AssertNull ("Optional", pre.OptionalPermissions);
\r
33 AssertNull ("Denied", pre.DeniedPermissions);
\r
34 string expected = AdjustNewLine ("<System.Security.Policy.PermissionRequestEvidence version=\"1\"/>\r\n");
\r
35 AssertEquals ("ToString", expected, pre.ToString ());
\r
39 public void Constructor1 () {
\r
40 PermissionSet ps = new PermissionSet (PermissionState.None);
\r
41 PermissionRequestEvidence pre = new PermissionRequestEvidence (ps, ps, ps);
\r
42 Assert ("Requested", !pre.RequestedPermissions.IsUnrestricted ());
\r
43 Assert ("Optional", !pre.OptionalPermissions.IsUnrestricted ());
\r
44 Assert ("Denied", !pre.DeniedPermissions.IsUnrestricted ());
\r
45 string expected = AdjustNewLine ("<System.Security.Policy.PermissionRequestEvidence version=\"1\">\r\n <Request>\r\n <PermissionSet class=\"System.Security.PermissionSet\"\r\n version=\"1\"/>\r\n </Request>\r\n <Optional>\r\n <PermissionSet class=\"System.Security.PermissionSet\"\r\n version=\"1\"/>\r\n </Optional>\r\n <Denied>\r\n <PermissionSet class=\"System.Security.PermissionSet\"\r\n version=\"1\"/>\r\n </Denied>\r\n</System.Security.Policy.PermissionRequestEvidence>\r\n");
\r
46 AssertEquals ("ToString", expected, pre.ToString ());
\r
50 public void Constructor2 () {
\r
51 PermissionSet ps = new PermissionSet (PermissionState.Unrestricted);
\r
52 PermissionRequestEvidence pre = new PermissionRequestEvidence (ps, ps, ps);
\r
53 Assert ("Requested", pre.RequestedPermissions.IsUnrestricted ());
\r
54 Assert ("Optional", pre.OptionalPermissions.IsUnrestricted ());
\r
55 Assert ("Denied", pre.DeniedPermissions.IsUnrestricted ());
\r
56 string expected = AdjustNewLine ("<System.Security.Policy.PermissionRequestEvidence version=\"1\">\r\n <Request>\r\n <PermissionSet class=\"System.Security.PermissionSet\"\r\n version=\"1\"\r\n Unrestricted=\"true\"/>\r\n </Request>\r\n <Optional>\r\n <PermissionSet class=\"System.Security.PermissionSet\"\r\n version=\"1\"\r\n Unrestricted=\"true\"/>\r\n </Optional>\r\n <Denied>\r\n <PermissionSet class=\"System.Security.PermissionSet\"\r\n version=\"1\"\r\n Unrestricted=\"true\"/>\r\n </Denied>\r\n</System.Security.Policy.PermissionRequestEvidence>\r\n");
\r
57 AssertEquals ("ToString", expected, pre.ToString ());
\r
61 public void Constructor3 () {
\r
62 PermissionSet ps1 = new PermissionSet (PermissionState.None);
\r
63 PermissionSet ps2 = new PermissionSet (PermissionState.Unrestricted);
\r
64 PermissionRequestEvidence pre = new PermissionRequestEvidence (ps1, ps2, ps1);
\r
65 Assert ("Requested", !pre.RequestedPermissions.IsUnrestricted ());
\r
66 Assert ("Optional", pre.OptionalPermissions.IsUnrestricted ());
\r
67 Assert ("Denied", !pre.DeniedPermissions.IsUnrestricted ());
\r
68 string expected = AdjustNewLine ("<System.Security.Policy.PermissionRequestEvidence version=\"1\">\r\n <Request>\r\n <PermissionSet class=\"System.Security.PermissionSet\"\r\n version=\"1\"/>\r\n </Request>\r\n <Optional>\r\n <PermissionSet class=\"System.Security.PermissionSet\"\r\n version=\"1\"\r\n Unrestricted=\"true\"/>\r\n </Optional>\r\n <Denied>\r\n <PermissionSet class=\"System.Security.PermissionSet\"\r\n version=\"1\"/>\r\n </Denied>\r\n</System.Security.Policy.PermissionRequestEvidence>\r\n");
\r
69 AssertEquals ("ToString", expected, pre.ToString ());
\r
73 public void Constructor4 () {
\r
74 PermissionSet ps1 = new PermissionSet (PermissionState.None);
\r
75 PermissionSet ps2 = new PermissionSet (PermissionState.Unrestricted);
\r
76 PermissionRequestEvidence pre = new PermissionRequestEvidence (ps2, ps1, ps2);
\r
77 Assert ("Requested", pre.RequestedPermissions.IsUnrestricted ());
\r
78 Assert ("Optional", !pre.OptionalPermissions.IsUnrestricted ());
\r
79 Assert ("Denied", pre.DeniedPermissions.IsUnrestricted ());
\r
80 string expected = AdjustNewLine ("<System.Security.Policy.PermissionRequestEvidence version=\"1\">\r\n <Request>\r\n <PermissionSet class=\"System.Security.PermissionSet\"\r\n version=\"1\"\r\n Unrestricted=\"true\"/>\r\n </Request>\r\n <Optional>\r\n <PermissionSet class=\"System.Security.PermissionSet\"\r\n version=\"1\"/>\r\n </Optional>\r\n <Denied>\r\n <PermissionSet class=\"System.Security.PermissionSet\"\r\n version=\"1\"\r\n Unrestricted=\"true\"/>\r\n </Denied>\r\n</System.Security.Policy.PermissionRequestEvidence>\r\n");
\r
81 AssertEquals ("ToString", expected, pre.ToString ());
\r
85 public void Copy () {
\r
86 PermissionSet ps1 = new PermissionSet (PermissionState.None);
\r
87 PermissionSet ps2 = new PermissionSet (PermissionState.Unrestricted);
\r
88 PermissionRequestEvidence pre = new PermissionRequestEvidence (ps2, ps1, ps2);
\r
89 PermissionRequestEvidence pre2 = pre.Copy ();
\r
90 Assert ("Requested", pre2.RequestedPermissions.IsUnrestricted ());
\r
91 Assert ("Optional", !pre2.OptionalPermissions.IsUnrestricted ());
\r
92 Assert ("Denied", pre2.DeniedPermissions.IsUnrestricted ());
\r
93 string expected = AdjustNewLine ("<System.Security.Policy.PermissionRequestEvidence version=\"1\">\r\n <Request>\r\n <PermissionSet class=\"System.Security.PermissionSet\"\r\n version=\"1\"\r\n Unrestricted=\"true\"/>\r\n </Request>\r\n <Optional>\r\n <PermissionSet class=\"System.Security.PermissionSet\"\r\n version=\"1\"/>\r\n </Optional>\r\n <Denied>\r\n <PermissionSet class=\"System.Security.PermissionSet\"\r\n version=\"1\"\r\n Unrestricted=\"true\"/>\r\n </Denied>\r\n</System.Security.Policy.PermissionRequestEvidence>\r\n");
\r
94 AssertEquals ("ToString", expected, pre.ToString ());
\r
95 AssertEquals ("ToString-Copy", pre.ToString (), pre2.ToString ());
\r