mirror of https://github.com/abpframework/abp.git
8 changed files with 115 additions and 18 deletions
@ -0,0 +1,58 @@ |
|||
using System.Collections.Generic; |
|||
using System.Threading.Tasks; |
|||
using Shouldly; |
|||
using Volo.Abp.Authorization.Permissions.Resources; |
|||
using Volo.Abp.Authorization.TestServices.Resources; |
|||
using Xunit; |
|||
|
|||
namespace Volo.Abp.Authorization; |
|||
|
|||
public class ResourcePermissionPopulator_Tests : AuthorizationTestBase |
|||
{ |
|||
private readonly ResourcePermissionPopulator _resourcePermissionPopulator; |
|||
|
|||
public ResourcePermissionPopulator_Tests() |
|||
{ |
|||
_resourcePermissionPopulator = GetRequiredService<ResourcePermissionPopulator>(); |
|||
} |
|||
|
|||
[Fact] |
|||
public async Task PopulateAsync() |
|||
{ |
|||
var testResourceObject = new TestEntityResource(TestEntityResource.ResourceKey5); |
|||
testResourceObject.ResourcePermissions.IsNullOrEmpty().ShouldBeTrue(); |
|||
|
|||
await _resourcePermissionPopulator.PopulateAsync<TestEntityResource>( |
|||
testResourceObject, |
|||
TestEntityResource.ResourceName |
|||
); |
|||
|
|||
testResourceObject.ResourcePermissions.ShouldNotBeNull(); |
|||
testResourceObject.ResourcePermissions.Count.ShouldBe(7); // Does not include MyResourcePermission8 because current user has no TestEntityManagementPermission2
|
|||
testResourceObject.ResourcePermissions["MyResourcePermission1"].ShouldBe(false); |
|||
testResourceObject.ResourcePermissions["MyResourcePermission2"].ShouldBe(false); |
|||
testResourceObject.ResourcePermissions["MyResourcePermission3"].ShouldBe(true); |
|||
testResourceObject.ResourcePermissions["MyResourcePermission4"].ShouldBe(false); |
|||
testResourceObject.ResourcePermissions["MyResourcePermission5"].ShouldBe(true); |
|||
testResourceObject.ResourcePermissions["MyResourcePermission6"].ShouldBe(false); |
|||
testResourceObject.ResourcePermissions["MyResourcePermission7"].ShouldBe(false); |
|||
|
|||
testResourceObject = new TestEntityResource(TestEntityResource.ResourceKey6); |
|||
testResourceObject.ResourcePermissions.IsNullOrEmpty().ShouldBeTrue(); |
|||
|
|||
await _resourcePermissionPopulator.PopulateAsync<TestEntityResource>( |
|||
testResourceObject, |
|||
TestEntityResource.ResourceName |
|||
); |
|||
|
|||
testResourceObject.ResourcePermissions.ShouldNotBeNull(); |
|||
testResourceObject.ResourcePermissions.Count.ShouldBe(7); // Does not include MyResourcePermission8 because current user has no TestEntityManagementPermission2
|
|||
testResourceObject.ResourcePermissions["MyResourcePermission1"].ShouldBe(false); |
|||
testResourceObject.ResourcePermissions["MyResourcePermission2"].ShouldBe(false); |
|||
testResourceObject.ResourcePermissions["MyResourcePermission3"].ShouldBe(false); |
|||
testResourceObject.ResourcePermissions["MyResourcePermission4"].ShouldBe(false); |
|||
testResourceObject.ResourcePermissions["MyResourcePermission5"].ShouldBe(false); |
|||
testResourceObject.ResourcePermissions["MyResourcePermission6"].ShouldBe(true); |
|||
testResourceObject.ResourcePermissions["MyResourcePermission7"].ShouldBe(false); |
|||
} |
|||
} |
|||
Loading…
Reference in new issue