@@ -409,19 +409,27 @@ public void ShouldAssignSchemaToAllResponses()
409409 [ Fact ]
410410 public void ShouldAllowComponentsThatJustContainAReference ( )
411411 {
412- using ( var stream = Resources . GetStream ( Path . Combine ( SampleFolderPath , "ComponentRootReference.json" ) ) )
412+ using var stream = Resources . GetStream ( Path . Combine ( SampleFolderPath , "ComponentRootReference.json" ) ) ;
413+ OpenApiStreamReader reader = new OpenApiStreamReader ( ) ;
414+ OpenApiDocument doc = reader . Read ( stream , out OpenApiDiagnostic diags ) ;
415+ OpenApiSchema schema1 = doc . Components . Schemas [ "AllPets" ] ;
416+ Assert . False ( schema1 . UnresolvedReference ) ;
417+ OpenApiSchema schema2 = doc . ResolveReferenceTo < OpenApiSchema > ( schema1 . Reference ) ;
418+ if ( schema2 . UnresolvedReference && schema1 . Reference . Id == schema2 . Reference . Id )
413419 {
414- OpenApiStreamReader reader = new OpenApiStreamReader ( ) ;
415- OpenApiDocument doc = reader . Read ( stream , out OpenApiDiagnostic diags ) ;
416- OpenApiSchema schema1 = doc . Components . Schemas [ "AllPets" ] ;
417- Assert . False ( schema1 . UnresolvedReference ) ;
418- OpenApiSchema schema2 = doc . ResolveReferenceTo < OpenApiSchema > ( schema1 . Reference ) ;
419- if ( schema2 . UnresolvedReference && schema1 . Reference . Id == schema2 . Reference . Id )
420- {
421- // detected a cycle - this code gets triggered
422- Assert . Fail ( "A cycle should not be detected" ) ;
423- }
420+ // detected a cycle - this code gets triggered
421+ Assert . Fail ( "A cycle should not be detected" ) ;
424422 }
425423 }
424+
425+ [ Fact ]
426+ public void ParseDocumentWithDefaultContentTypeSettingShouldSucceed ( )
427+ {
428+ using var stream = Resources . GetStream ( Path . Combine ( SampleFolderPath , "docWithEmptyProduces.yaml" ) ) ;
429+ var doc = new OpenApiStreamReader ( new OpenApiReaderSettings { DefaultContentType = new List < string > { "application/json" } } )
430+ . Read ( stream , out OpenApiDiagnostic diags ) ;
431+ var mediaType = doc . Paths [ "/example" ] . Operations [ OperationType . Get ] . Responses [ "200" ] . Content ;
432+ Assert . Contains ( "application/json" , mediaType ) ;
433+ }
426434 }
427435}
0 commit comments