public void GenerateSchemaCustomSettingsShouldSucceed( Type type, OpenApiDocumentGenerationSettings generationSettings, OpenApiSchema expectedSchema, IDictionary <string, OpenApiSchema> expectedReferences) { _output.WriteLine(type.ToString()); // Arrange var referenceRegistryManager = new ReferenceRegistryManager(generationSettings); // Act var returnedSchema = referenceRegistryManager.FindOrAddSchemaReference(type); // Assert var actualSchema = returnedSchema; var actualReferences = referenceRegistryManager.SchemaReferenceRegistry.References; _output.WriteLine(actualSchema.SerializeAsJson(OpenApiSpecVersion.OpenApi3_0)); foreach (var reference in actualReferences) { _output.WriteLine(reference.Key); _output.WriteLine(reference.Value.SerializeAsJson(OpenApiSpecVersion.OpenApi3_0)); } actualSchema.Should().BeEquivalentTo(expectedSchema); actualReferences.Should().BeEquivalentTo(expectedReferences); }
public void GenerateSchemaFromTypeShouldFail( Type type, string expectedExceptionMessage) { var referenceRegistryManager = new ReferenceRegistryManager(); Action action = () => referenceRegistryManager.FindOrAddSchemaReference(type); action.Should().Throw <DocumentationException>(expectedExceptionMessage); }
public void GenerateSchemaFromTypeShouldFail( Type type, string expectedExceptionMessage) { var referenceRegistryManager = new ReferenceRegistryManager( new OpenApiDocumentGenerationSettings( new SchemaGenerationSettings(new DefaultPropertyNameResolver()))); Action action = () => referenceRegistryManager.FindOrAddSchemaReference(type); action.Should().Throw <DocumentationException>(expectedExceptionMessage); }