* SecurityElementTest.cs: Added tests for using single quotes as
[mono.git] / mcs / class / corlib / Test / System.Security / SecurityExceptionTest.cs
1 //
2 // SecurityExceptionTest.cs - NUnit Test Cases for SecurityException
3 //
4 // Author:
5 //      Sebastien Pouliot (spouliot@motus.com)
6 //
7 // (C) 2004 Motus Technologies Inc. (http://www.motus.com)
8 //
9
10 using NUnit.Framework;
11 using System;
12 using System.Security;
13 using System.Security.Permissions;
14
15 namespace MonoTests.System.Security {
16
17         [TestFixture]
18         public class SecurityExceptionTest : Assertion {
19
20                 [Test]
21                 public void Constructor_Empty () 
22                 {
23                         SecurityException se = new SecurityException ();
24 #if ! NET_1_0
25                         AssertNull ("GrantedSet", se.GrantedSet);
26                         AssertNull ("RefusedSet", se.RefusedSet);
27 #endif
28                         AssertNull ("PermissionState", se.PermissionState);
29                         AssertNull ("PermissionType", se.PermissionType);
30                         Assert ("ToString()", se.ToString ().StartsWith ("System.Security.SecurityException: "));
31                 }
32
33                 [Test]
34                 public void Constructor_Message () 
35                 {
36                         SecurityException se = new SecurityException ("message");
37 #if ! NET_1_0
38                         AssertNull ("GrantedSet", se.GrantedSet);
39                         AssertNull ("RefusedSet", se.RefusedSet);
40 #endif
41                         AssertNull ("PermissionState", se.PermissionState);
42                         AssertNull ("PermissionType", se.PermissionType);
43                         AssertEquals ("ToString()", "System.Security.SecurityException: message", se.ToString ());
44                 }
45
46                 [Test]
47                 public void Constructor_MessageInner () 
48                 {
49                         SecurityException se = new SecurityException ("message", new Exception ());
50 #if ! NET_1_0
51                         AssertNull ("GrantedSet", se.GrantedSet);
52                         AssertNull ("RefusedSet", se.RefusedSet);
53 #endif
54                         AssertNull ("PermissionState", se.PermissionState);
55                         AssertNull ("PermissionType", se.PermissionType);
56                         Assert ("ToString().Starts", se.ToString ().StartsWith ("System.Security.SecurityException: message"));
57                         Assert ("ToString().Include", (se.ToString ().IndexOf ("System.Exception") > 0));
58                 }
59
60                 [Test]
61                 public void Constructor_MessageType () 
62                 {
63                         SecurityException se = new SecurityException ("message", typeof (EnvironmentPermission));
64 #if ! NET_1_0
65                         AssertNull ("GrantedSet", se.GrantedSet);
66                         AssertNull ("RefusedSet", se.RefusedSet);
67 #endif
68                         AssertNull ("PermissionState", se.PermissionState);
69                         AssertEquals ("PermissionType", typeof (EnvironmentPermission), se.PermissionType);
70
71                         Assert ("ToString().Starts", se.ToString ().StartsWith ("System.Security.SecurityException: message"));
72                         // note: can't check for PermissionType as it's not shown with MS class lib
73                 }
74
75                 [Test]
76                 public void Constructor_MessageTypeState () 
77                 {
78                         SecurityException se = new SecurityException ("message", typeof (EnvironmentPermission), "mono");
79 #if ! NET_1_0
80                         AssertNull ("GrantedSet", se.GrantedSet);
81                         AssertNull ("RefusedSet", se.RefusedSet);
82 #endif
83                         AssertEquals ("PermissionState", "mono", se.PermissionState);
84                         AssertEquals ("PermissionType", typeof (EnvironmentPermission), se.PermissionType);
85
86                         Assert ("ToString().Include(mono)", (se.ToString ().IndexOf ("mono") > 0));
87                         // note: can't check for PermissionType as it's not shown with MS class lib
88                 }
89         }
90 }