2 // WindowsPrincipalTest.cs - NUnit Test Cases for WindowsPrincipal
5 // Sebastien Pouliot (sebastien@ximian.com)
7 // (C) 2003 Motus Technologies Inc. (http://www.motus.com)
8 // (C) 2004 Novell (http://www.novell.com)
11 using NUnit
.Framework
;
13 using System
.Runtime
.Serialization
;
14 using System
.Security
.Principal
;
16 namespace MonoTests
.System
.Security
.Principal
{
19 public class WindowsPrincipalTest
{
22 [ExpectedException (typeof (ArgumentNullException
))]
23 public void ConstructorNull ()
25 WindowsPrincipal p
= new WindowsPrincipal (null);
29 public void Current ()
31 WindowsPrincipal p
= new WindowsPrincipal (WindowsIdentity
.GetCurrent ());
34 // we don't Assert as we don't know the current user roles
35 test
= p
.IsInRole (WindowsBuiltInRole
.Administrator
);
36 test
= p
.IsInRole (WindowsBuiltInRole
.BackupOperator
);
37 test
= p
.IsInRole (WindowsBuiltInRole
.Guest
);
38 test
= p
.IsInRole (WindowsBuiltInRole
.PowerUser
);
39 test
= p
.IsInRole (WindowsBuiltInRole
.Replicator
);
40 test
= p
.IsInRole (WindowsBuiltInRole
.User
);
42 // doesn't work under XP in a workgroup (ArgumentException)
43 // test = p.IsInRole (WindowsBuiltInRole.AccountOperator);
44 // test = p.IsInRole (WindowsBuiltInRole.PrintOperator);
45 // test = p.IsInRole (WindowsBuiltInRole.SystemOperator);
49 public void Anonymous ()
51 WindowsPrincipal p
= new WindowsPrincipal (WindowsIdentity
.GetAnonymous ());
53 Assert
.IsFalse (p
.IsInRole (WindowsBuiltInRole
.Administrator
), "Administrator");
54 Assert
.IsFalse (p
.IsInRole (WindowsBuiltInRole
.BackupOperator
), "BackupOperator");
55 Assert
.IsFalse (p
.IsInRole (WindowsBuiltInRole
.Guest
), "Guest");
56 Assert
.IsFalse (p
.IsInRole (WindowsBuiltInRole
.PowerUser
), "PowerUser");
57 Assert
.IsFalse (p
.IsInRole (WindowsBuiltInRole
.Replicator
), "Replicator");
58 Assert
.IsFalse (p
.IsInRole (WindowsBuiltInRole
.User
), "User");
60 // doesn't work under XP in a workgroup (ArgumentException)
61 // Assert ("AccountOperator", !p.IsInRole (WindowsBuiltInRole.AccountOperator));
62 // Assert ("PrintOperator", !p.IsInRole (WindowsBuiltInRole.PrintOperator));
63 // Assert ("SystemOperator", !p.IsInRole (WindowsBuiltInRole.SystemOperator));
67 //[ExpectedException (typeof (ArgumentNullException))]
68 public void IsInRole_Null ()
70 WindowsPrincipal p
= new WindowsPrincipal (WindowsIdentity
.GetAnonymous ());
71 Assert
.IsFalse (p
.IsInRole ((string)null));
75 public void Interface ()
77 WindowsPrincipal wp
= new WindowsPrincipal (WindowsIdentity
.GetAnonymous ());
79 IPrincipal p
= (wp
as IPrincipal
);