|
|
|
@ -12,13 +12,13 @@ namespace Volo.Abp.Authorization |
|
|
|
{ |
|
|
|
public abstract class PermissionStateProvider_Tests : AuthorizationTestBase |
|
|
|
{ |
|
|
|
protected ISimpleStateCheckerManager<PermissionDefinition> PermissionSimpleStateCheckerManager { get; } |
|
|
|
protected ISimpleStateCheckerManager<PermissionDefinition> StateCheckerManager { get; } |
|
|
|
protected IPermissionDefinitionManager PermissionDefinitionManager { get; } |
|
|
|
protected ICurrentPrincipalAccessor CurrentPrincipalAccessor { get; } |
|
|
|
|
|
|
|
public PermissionStateProvider_Tests() |
|
|
|
{ |
|
|
|
PermissionSimpleStateCheckerManager = GetRequiredService<ISimpleStateCheckerManager<PermissionDefinition>>(); |
|
|
|
StateCheckerManager = GetRequiredService<ISimpleStateCheckerManager<PermissionDefinition>>(); |
|
|
|
PermissionDefinitionManager = GetRequiredService<IPermissionDefinitionManager>(); |
|
|
|
CurrentPrincipalAccessor = GetRequiredService<ICurrentPrincipalAccessor>(); |
|
|
|
} |
|
|
|
@ -30,13 +30,13 @@ namespace Volo.Abp.Authorization |
|
|
|
public async Task PermissionState_Test() |
|
|
|
{ |
|
|
|
var myPermission1 = PermissionDefinitionManager.Get("MyPermission1"); |
|
|
|
myPermission1.SimpleStateCheckers.ShouldContain(x => x.GetType() == typeof(TestRequireEditionPermissionSimpleStateChecker)); |
|
|
|
myPermission1.StateCheckers.ShouldContain(x => x.GetType() == typeof(TestRequireEditionPermissionSimpleStateChecker)); |
|
|
|
|
|
|
|
(await PermissionSimpleStateCheckerManager.IsEnabledAsync(myPermission1)).ShouldBeFalse(); |
|
|
|
(await StateCheckerManager.IsEnabledAsync(myPermission1)).ShouldBeFalse(); |
|
|
|
|
|
|
|
using (CurrentPrincipalAccessor.Change(new Claim(AbpClaimTypes.EditionId, Guid.NewGuid().ToString()))) |
|
|
|
{ |
|
|
|
(await PermissionSimpleStateCheckerManager.IsEnabledAsync(myPermission1)).ShouldBeTrue(); |
|
|
|
(await StateCheckerManager.IsEnabledAsync(myPermission1)).ShouldBeTrue(); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
@ -47,7 +47,7 @@ namespace Volo.Abp.Authorization |
|
|
|
{ |
|
|
|
services.Configure<AbpSimpleStateCheckerOptions<PermissionDefinition>>(options => |
|
|
|
{ |
|
|
|
options.GlobalSimpleStateCheckers.Add<TestGlobalRequireRolePermissionSimpleStateChecker>(); |
|
|
|
options.GlobalStateCheckers.Add<TestGlobalRequireRolePermissionSimpleStateChecker>(); |
|
|
|
}); |
|
|
|
} |
|
|
|
|
|
|
|
@ -56,11 +56,11 @@ namespace Volo.Abp.Authorization |
|
|
|
{ |
|
|
|
var myPermission2 = PermissionDefinitionManager.Get("MyPermission2"); |
|
|
|
|
|
|
|
(await PermissionSimpleStateCheckerManager.IsEnabledAsync(myPermission2)).ShouldBeFalse(); |
|
|
|
(await StateCheckerManager.IsEnabledAsync(myPermission2)).ShouldBeFalse(); |
|
|
|
|
|
|
|
using (CurrentPrincipalAccessor.Change(new Claim(AbpClaimTypes.Role, "admin"))) |
|
|
|
{ |
|
|
|
(await PermissionSimpleStateCheckerManager.IsEnabledAsync(myPermission2)).ShouldBeTrue(); |
|
|
|
(await StateCheckerManager.IsEnabledAsync(myPermission2)).ShouldBeTrue(); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|