public void TestCreateGetSimpleResourceAuthorizationsByPrincipalId_PrincipalDoesHaveNotRoles() { var principalId = 1; var principal = new Principal { PrincipalId = principalId, }; var resourceType = new ResourceType { ResourceTypeId = ResourceType.Project.Id, ResourceTypeName = ResourceType.Project.Value }; var resource = new Resource { ResourceId = 1, ForeignResourceId = 2, ResourceTypeId = resourceType.ResourceTypeId, ResourceType = resourceType, }; var permission = new Permission { PermissionId = 1, PermissionName = "Permission" }; var role = new Role { IsActive = true, RoleId = 1, RoleName = "role name" }; var principalRole = new PrincipalRole { RoleId = role.RoleId, Role = role, Principal = principal, PrincipalId = principal.PrincipalId }; var roleResourcePermission = new RoleResourcePermission { Permission = permission, PermissionId = permission.PermissionId, Resource = resource, ResourceId = resource.ResourceId, Role = role, RoleId = role.RoleId }; context.Principals.Add(principal); context.ResourceTypes.Add(resourceType); context.Resources.Add(resource); context.Permissions.Add(permission); context.Roles.Add(role); context.PrincipalRoles.Add(principalRole); context.RoleResourcePermissions.Add(roleResourcePermission); var results = UserQueries.CreateGetSimpleResourceAuthorizationsByPrincipalId(context, principalId + 1).ToList(); Assert.AreEqual(0, results.Count); }
private bool Equals(Role role, PrincipalRole principalRole) { return(DomainObjectHandleComparer.Instance.Equals(role.Position, principalRole.Position) && DomainObjectHandleComparer.Instance.Equals(role.Group, principalRole.Group)); }
public void TestCreateGetSimpleResourceAuthorizationsByPrincipalId_PrincipalHasRoleAndPermissionAssignment_RoleIsInactive_PermissionIsNotAllowed() { var principalId = 1; var principal = new Principal { PrincipalId = principalId, }; var resourceType = new ResourceType { ResourceTypeId = ResourceType.Project.Id, ResourceTypeName = ResourceType.Project.Value }; var resource = new Resource { ResourceId = 1, ForeignResourceId = 2, ResourceTypeId = resourceType.ResourceTypeId, ResourceType = resourceType, }; var permission = new Permission { PermissionId = 1, PermissionName = "Permission" }; var role = new Role { IsActive = false, RoleId = 1, RoleName = "role name" }; var principalRole = new PrincipalRole { RoleId = role.RoleId, Role = role, Principal = principal, PrincipalId = principal.PrincipalId }; var roleResourcePermission = new RoleResourcePermission { Permission = permission, PermissionId = permission.PermissionId, Resource = resource, ResourceId = resource.ResourceId, Role = role, RoleId = role.RoleId }; var permissionAssignment = new PermissionAssignment { IsAllowed = false, Permission = permission, PermissionId = permission.PermissionId, Principal = principal, Resource = resource, ResourceId = resource.ResourceId, PrincipalId = principal.PrincipalId, }; context.Principals.Add(principal); context.ResourceTypes.Add(resourceType); context.Resources.Add(resource); context.Permissions.Add(permission); context.Roles.Add(role); context.PrincipalRoles.Add(principalRole); context.RoleResourcePermissions.Add(roleResourcePermission); context.PermissionAssignments.Add(permissionAssignment); var results = UserQueries.CreateGetSimpleResourceAuthorizationsByPrincipalId(context, principalId).ToList(); Assert.AreEqual(1, results.Count); var firstResult = results.First(); Assert.AreEqual(principal.PrincipalId, firstResult.PrincipalId); Assert.AreEqual(permission.PermissionId, firstResult.PermissionId); Assert.AreEqual(resource.ResourceId, firstResult.ResourceId); Assert.AreEqual(resource.ForeignResourceId, firstResult.ForeignResourceId); Assert.IsFalse(firstResult.IsAllowed); }