我已經得到了我想要測試策略中的C#是否可以編寫一個可以測試AuthorizationPolicy對象的測試?
public class WorkflowCreatePolicy
{
public AuthorizationPolicy AuthorizationPolicy =>
new AuthorizationPolicyBuilder()
.RequireClaim("scope", "WorkflowAdmin")
.Build();
}
有誰知道的方法來測試AuthorizationPolicy確認範圍「WorkflowAdmin」是成功的,其他都是不呢?
這是我所看到的,當我檢查對象:
我設法找到了這個網站:Authorization Handler Unit Tests但其談論測試處理器,並具有標誌着身份驗證嘗試是成功的代碼。
我不確定這是否接近或不接近。它目前沒有通過
[Test]
public void GivenPolicyName_WhenICallPolicyChecks_ThenItPasses()
{
ClaimsPrincipal user = new ClaimsPrincipal(new ClaimsIdentity(new List<Claim> { new Claim(CustomClaims.Scope, "WorkflowAdmin") }));
WorkflowCreatePolicy workflowCreatePolicy = new WorkflowCreatePolicy();
AuthorizationHandlerContext authorizationHandlerContext = new AuthorizationHandlerContext(workflowCreatePolicy.AuthorizationPolicy.Requirements, user, null);
Assert.That(authorizationHandlerContext.HasSucceeded, Is.EqualTo(true));
}