public void RequiresAuthorizationPolicy_NotLoggedInUser_ReturnsUnauthenticated() { var attr = new RequiresAuthorizationPolicyAttribute("policy"); var user = new ClaimsPrincipal(); var policyStore = UserSetup.GetPolicyStore(); var shouldContinue = attr.ShouldContinue(user, () => policyStore); Assert.False(shouldContinue.ShouldContinue); Assert.Equal(ApiFilterRunResult.Unauthenticated.SetResponseCode, shouldContinue.SetResponseCode); }
public void RequiresAuthorizationPolicy_UserWithPolicy_ReturnsContinue() { var attr = new RequiresAuthorizationPolicyAttribute("policy"); var user = UserSetup.GetUser(); var policyStore = UserSetup.GetPolicyStore(); policyStore.SetPolicy("policy", u => true); var shouldContinue = attr.ShouldContinue(user, () => policyStore); Assert.True(shouldContinue.ShouldContinue); }
public void RequiresAuthorizationPolicy_UserWithoutPolicy_ReturnsUnauthorized() { var attr = new RequiresAuthorizationPolicyAttribute("policy"); var user = UserSetup.GetUser(); var policyStore = UserSetup.GetPolicyStore(); policyStore.SetPolicy("policy", u => false); var shouldContinue = attr.ShouldContinue(user, () => policyStore); Assert.False(shouldContinue.ShouldContinue); Assert.Equal(ApiFilterRunResult.Unauthorized.SetResponseCode, shouldContinue.SetResponseCode); }
public void RequiresAuthorizationPolicy_NonExistingPolicy_ThrowsException() { var attr = new RequiresAuthorizationPolicyAttribute("policy"); var user = UserSetup.GetUser(); var policyStore = UserSetup.GetPolicyStore(); bool error = false; try { attr.ShouldContinue(user, () => policyStore); } catch (Exception ex) { error = ex.Message.Contains("not found"); } Assert.True(error); }