39 lines
1.2 KiB
C#
39 lines
1.2 KiB
C#
using Microsoft.AspNetCore.Authorization;
|
|
using Microsoft.Extensions.Options;
|
|
using NUnit.Framework;
|
|
using System.Linq;
|
|
using System.Threading.Tasks;
|
|
using LCU.API.Internal.Operations.IncentiveApi.Authorization;
|
|
|
|
namespace Application.UnitTests.Authorization
|
|
{
|
|
public class PermissionPolicyProviderTest
|
|
{
|
|
private PermissionPolicyProvider _provider;
|
|
|
|
[SetUp]
|
|
public void Setup()
|
|
{
|
|
var options = Options.Create(new AuthorizationOptions());
|
|
_provider = new PermissionPolicyProvider(options);
|
|
}
|
|
|
|
[Test]
|
|
public async Task GetPolicyAsync_GivenPolicyName_ReturnsPermissionsPolicy()
|
|
{
|
|
var result = await _provider.GetPolicyAsync("Permission");
|
|
|
|
Assert.IsInstanceOf<PermissionRequirement>(result.Requirements.First());
|
|
}
|
|
|
|
[Test]
|
|
public async Task GetPolicyAsync_GivenParameters_PolicyWithPermissions()
|
|
{
|
|
var result = await _provider.GetPolicyAsync("Permissionp1,p2");
|
|
|
|
var requirement = result.Requirements.First() as PermissionRequirement;
|
|
Assert.AreEqual("p1,p2", requirement.Permissions);
|
|
}
|
|
}
|
|
}
|