public void AddRemoveUsers_NullArguments() { PolicyDecision policy = new PolicyDecision(config); Assert.Throws(typeof(ArgumentNullException), () => policy.AddUsersToRoles(null, new String[] { })); Assert.Throws(typeof(ArgumentNullException), () => policy.AddUsersToRoles(new String[] { }, null)); Assert.Throws(typeof(ArgumentNullException), () => policy.RemoveUsersFromRoles(null, new String[] { })); Assert.Throws(typeof(ArgumentNullException), () => policy.RemoveUsersFromRoles(new String[] { }, null)); }
public void AddRemoveUsers_UserAlreadyExists() { PolicyDecision policy = new PolicyDecision(config); policy.ApplicationName = "Application 2"; if (false == policy.RoleExists("Role 1")) policy.CreateRole("Role 1"); if (policy.IsUserInRole("User 1", "Role 1")) policy.RemoveUsersFromRoles(new String[] { "User 1" }, new String[] { "Role 1" }); Assert.DoesNotThrow(() => policy.AddUsersToRoles(new String[] { "User 1" }, new String[] { "Role 1" })); Assert.Throws(typeof(ProviderException), () => policy.AddUsersToRoles(new String[] { "User 1" }, new String[] { "Role 1" })); policy.RemoveUsersFromRoles(new String[] { "User 1" }, new String[] { "Role 1" }); policy.DeleteRole("Role 1", false); }
public void Role_GetHierarchy() { PolicyDecision policy = new PolicyDecision(config); policy.ApplicationName = "Application 1"; String[] roles = {"Test Role", "Test Role 2", "Test Role 3"}; for (Int32 i = 0; i != roles.Length; ++i) { if (policy.RoleExists(roles[i])) continue; if (0 == i) policy.CreateRole(roles[i]); else policy.CreateRole(roles[i], roles[i-1]); } policy.AddUsersToRoles(new String[] { "User" }, new String[] { roles[2] }); String[] userRoles = policy.GetRolesForUser("User"); Assert.AreEqual(3, userRoles.Length); foreach (String role in roles) Assert.IsTrue(Array.Exists(userRoles, v => v == role)); for (Int32 i = roles.Length - 1; i >= 0; --i) policy.DeleteRole(roles[i], false); }