public async Task produces_error_when_missing_claim_with_multiple_values() { var req = new ClaimAuthorizationRequirement("Admin", new[] { "true", "maybe" }); var context = new AuthorizationContext(); context.User = CreatePrincipal(); await req.Authorize(context); context.HasErrors.ShouldBeTrue(); context.Errors.Single().ShouldBe("Required claim 'Admin' with any value of 'true, maybe' is not present."); }
public async Task produces_error_when_missing_claim_ignoring_value() { var req = new ClaimAuthorizationRequirement("Admin"); var context = new AuthorizationContext(); context.User = CreatePrincipal(); await req.Authorize(context); context.HasErrors.ShouldBeTrue(); context.Errors.Single().ShouldBe("Required claim 'Admin' is not present."); }
public async Task succeeds_when_claim_with_multiple_values() { var req = new ClaimAuthorizationRequirement("Admin", new[] { "true", "maybe" }); var context = new AuthorizationContext(); context.User = CreatePrincipal(claims: new Dictionary <string, string> { { "Admin", "maybe" } }); await req.Authorize(context); context.HasErrors.ShouldBeFalse(); }
public async Task produces_error_when_missing_claim_with_single_value() { var req = new ClaimAuthorizationRequirement("Admin", "true"); var context = new AuthorizationContext { User = ValidationTestBase.CreatePrincipal() }; await req.Authorize(context); context.HasErrors.ShouldBeTrue(); context.Errors.Single().ShouldBe("Required claim 'Admin' with any value of 'true' is not present."); }
public async Task succeeds_when_claim_with_single_value() { var req = new ClaimAuthorizationRequirement("Admin", "true"); var context = new AuthorizationContext { User = ValidationTestBase.CreatePrincipal(claims: new Dictionary <string, string> { { "Admin", "true" } }) }; await req.Authorize(context); context.HasErrors.ShouldBeFalse(); }