mirror of https://github.com/abpframework/abp.git
7 changed files with 167 additions and 29 deletions
@ -0,0 +1,21 @@ |
|||||
|
using Volo.Abp.Authorization; |
||||
|
using Volo.Abp.Autofac; |
||||
|
using Volo.Abp.Modularity; |
||||
|
|
||||
|
namespace Volo.Abp.UI.Navigation |
||||
|
{ |
||||
|
[DependsOn(typeof(AbpUiNavigationModule))] |
||||
|
[DependsOn(typeof(AbpAuthorizationModule))] |
||||
|
[DependsOn(typeof(AbpAutofacModule))] |
||||
|
public class AbpUiNavigationTestModule : AbpModule |
||||
|
{ |
||||
|
public override void ConfigureServices(ServiceConfigurationContext context) |
||||
|
{ |
||||
|
Configure<AbpNavigationOptions>(options => |
||||
|
{ |
||||
|
options.MenuContributors.Add(new MenuManager_Tests.TestMenuContributor1()); |
||||
|
options.MenuContributors.Add(new MenuManager_Tests.TestMenuContributor2()); |
||||
|
}); |
||||
|
} |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,28 @@ |
|||||
|
using System.Threading.Tasks; |
||||
|
using Volo.Abp.Authorization.Permissions; |
||||
|
using Volo.Abp.DependencyInjection; |
||||
|
|
||||
|
namespace Volo.Abp.UI.Navigation |
||||
|
{ |
||||
|
public class FakePermissionStore : IPermissionStore, ITransientDependency |
||||
|
{ |
||||
|
public Task<bool> IsGrantedAsync(string name, string providerName, string providerKey) |
||||
|
{ |
||||
|
var result = (name.Contains("Administration") || name.Contains("Dashboard")) && !name.Contains("SubMenu1"); |
||||
|
return Task.FromResult(result); |
||||
|
} |
||||
|
|
||||
|
public Task<MultiplePermissionGrantResult> IsGrantedAsync(string[] names, string providerName, string providerKey) |
||||
|
{ |
||||
|
var result = new MultiplePermissionGrantResult(); |
||||
|
foreach (var name in names) |
||||
|
{ |
||||
|
result.Result.Add(name, (name.Contains("Administration") || name.Contains("Dashboard")) && !name.Contains("SubMenu1") |
||||
|
? PermissionGrantResult.Granted |
||||
|
: PermissionGrantResult.Prohibited); |
||||
|
} |
||||
|
|
||||
|
return Task.FromResult(result); |
||||
|
} |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,24 @@ |
|||||
|
using Volo.Abp.Authorization.Permissions; |
||||
|
|
||||
|
namespace Volo.Abp.UI.Navigation |
||||
|
{ |
||||
|
public class TestPermissionDefinitionProvider : PermissionDefinitionProvider |
||||
|
{ |
||||
|
public override void Define(IPermissionDefinitionContext context) |
||||
|
{ |
||||
|
var group = context.AddGroup("TestGroup"); |
||||
|
|
||||
|
group.AddPermission("Dashboard"); |
||||
|
|
||||
|
group.AddPermission("Administration"); |
||||
|
group.AddPermission("Administration.UserManagement"); |
||||
|
group.AddPermission("Administration.RoleManagement"); |
||||
|
|
||||
|
group.AddPermission("Administration.DashboardSettings"); |
||||
|
|
||||
|
group.AddPermission("Administration.SubMenu1"); |
||||
|
group.AddPermission("Administration.SubMenu1.1"); |
||||
|
group.AddPermission("Administration.SubMenu1.2"); |
||||
|
} |
||||
|
} |
||||
|
} |
||||
Loading…
Reference in new issue