public void Can_persist_preconfigured_permissions() { var sut = new UserAuthRepoFixtureBuilder() .WithUsers( new UserAuth() { Id = 5, UserName = "******", Permissions = new[] { "perm1", "perm2", "perm3" }.ToList() }, new UserAuth() { Id = 2, UserName = "******", Permissions = new[] { "perm3" }.ToList() } ) .Build(); var result = sut.HasPermission("5", "perm2"); var invalidPermission = sut.HasPermission("5", "perm4"); var invalidUserPermission = sut.HasPermission("2", "perm2"); Assert.True(result); Assert.False(invalidPermission); Assert.False(invalidUserPermission); }
public void Can_unassign_permissions() { var sut = new UserAuthRepoFixtureBuilder() .WithUsers( new UserAuth() { Id = 5, UserName = "******", Permissions = new[] { "perm1", "perm3" }.ToList() }, new UserAuth() { Id = 2, UserName = "******", Permissions = new[] { "perm3" }.ToList() } ) .Build(); sut.AssignRoles("5", permissions: new[] { "perm3" }); sut.UnAssignRoles("5", permissions: new[] { "perm2", "perm1" }); sut.UnAssignRoles("2", permissions: new[] { "perm3" }); var hasRemovedPermission1 = sut.HasPermission("5", "perm2"); var hasRemovedPermission2 = sut.HasPermission("5", "perm1"); var hasUnremovedPermission = sut.HasPermission("5", "perm3"); Assert.True(hasUnremovedPermission); Assert.False(hasRemovedPermission1); Assert.False(hasRemovedPermission2); Assert.False(sut.HasPermission("2", "perm3")); }