public void GivenAnInvalidAuthorizationConfigurationForRoleWithNoActions_WhenValidated_ThrowAppropriateValidationException() { var invalidAuthorizationConfiguration = Samples.GetJsonSample <AuthorizationConfiguration>("AuthConfigWithInvalidEntries"); InvalidDefinitionException validationException = Assert.Throws <InvalidDefinitionException>(() => invalidAuthorizationConfiguration.ValidateRoles()); Assert.NotNull(validationException.Issues.SingleOrDefault(issueComp => issueComp.Diagnostics.Equals("Role 'Nurse' contains a ResourcePermission with no Actions."))); }
private void BuildAndVerify(SearchParameterDefinitionBuilder builder, string expectedIssue) { InvalidDefinitionException ex = Assert.Throws <InvalidDefinitionException>(() => builder.Build()); Assert.Contains(ex.Issues, issue => issue.Severity == IssueSeverity.Fatal.ToString() && issue.Code == IssueType.Invalid.ToString() && issue.Diagnostics.StartsWith(expectedIssue)); }
public void GivenAnInvalidAuthorizationConfigurationForRoleWithNoPermissions_WhenValidated_ThrowAppropriateValidationException() { var invalidAuthorizationConfiguration = Samples.GetJsonSample <AuthorizationConfiguration>("AuthConfigWithValidRoles"); invalidAuthorizationConfiguration.Roles[0].ResourcePermissions.Clear(); InvalidDefinitionException validationException = Assert.Throws <InvalidDefinitionException>(() => invalidAuthorizationConfiguration.ValidateRoles()); Assert.NotNull(validationException.Issues.SingleOrDefault(issueComp => issueComp.Diagnostics.Equals("Role 'clinician' must have one or more ResourcePermissions."))); }
private void BuildAndVerify(string filename, string expectedIssue) { var bundle = SearchParameterDefinitionBuilder.ReadEmbeddedSearchParameters( filename, ModelInfoProvider.Instance, $"{typeof(Definitions).Namespace}.DefinitionFiles", typeof(EmbeddedResourceManager).Assembly); InvalidDefinitionException ex = Assert.Throws <InvalidDefinitionException>( () => SearchParameterDefinitionBuilder.Build(bundle.Entries.Select(e => e.Resource).ToList(), _uriDictionary, _resourceTypeDictionary, ModelInfoProvider.Instance)); Assert.Contains(ex.Issues, issue => issue.Severity == IssueSeverity.Fatal.ToString() && issue.Code == IssueType.Invalid.ToString() && issue.Diagnostics.StartsWith(expectedIssue)); }