File tree Expand file tree Collapse file tree 2 files changed +24
-12
lines changed
src/Microsoft.OpenApi.Readers/V3
test/Microsoft.OpenApi.Readers.Tests/ReferenceService Expand file tree Collapse file tree 2 files changed +24
-12
lines changed Original file line number Diff line number Diff line change @@ -75,18 +75,6 @@ public OpenApiReference ConvertToOpenApiReference(
7575 var segments = reference . Split ( '#' ) ;
7676 if ( segments . Length == 1 )
7777 {
78- // Either this is an external reference as an entire file
79- // or a simple string-style reference for tag and security scheme.
80- if ( type == null )
81- {
82- // "$ref": "Pet.json"
83- return new OpenApiReference
84- {
85- Type = type ,
86- ExternalResource = segments [ 0 ]
87- } ;
88- }
89-
9078 if ( type == ReferenceType . Tag || type == ReferenceType . SecurityScheme )
9179 {
9280 return new OpenApiReference
@@ -95,6 +83,14 @@ public OpenApiReference ConvertToOpenApiReference(
9583 Id = reference
9684 } ;
9785 }
86+
87+ // Either this is an external reference as an entire file
88+ // or a simple string-style reference for tag and security scheme.
89+ return new OpenApiReference
90+ {
91+ Type = type ,
92+ ExternalResource = segments [ 0 ]
93+ } ;
9894 }
9995 else if ( segments . Length == 2 )
10096 {
Original file line number Diff line number Diff line change @@ -108,5 +108,21 @@ public void ParseSecuritySchemeReference()
108108 reference . ExternalResource . Should ( ) . BeNull ( ) ;
109109 reference . Id . Should ( ) . Be ( id ) ;
110110 }
111+
112+ [ Fact ]
113+ public void ParseLocalFileReference ( )
114+ {
115+ // Arrange
116+ var versionService = new OpenApiV3VersionService ( Diagnostic ) ;
117+ var referenceType = ReferenceType . Schema ;
118+ var input = $ "../schemas/collection.json";
119+
120+ // Act
121+ var reference = versionService . ConvertToOpenApiReference ( input , referenceType ) ;
122+
123+ // Assert
124+ reference . Type . Should ( ) . Be ( referenceType ) ;
125+ reference . ExternalResource . Should ( ) . Be ( input ) ;
126+ }
111127 }
112128}
You can’t perform that action at this time.
0 commit comments