8
8
import io .swagger .v3 .oas .models .info .Info ;
9
9
import io .swagger .v3 .oas .models .media .ArraySchema ;
10
10
import io .swagger .v3 .oas .models .media .ComposedSchema ;
11
+ import io .swagger .v3 .oas .models .media .IntegerSchema ;
11
12
import io .swagger .v3 .oas .models .media .Schema ;
12
13
import io .swagger .v3 .oas .models .parameters .Parameter ;
13
14
import io .swagger .v3 .oas .models .parameters .RequestBody ;
@@ -88,6 +89,7 @@ public class V2ConverterTest {
88
89
private static final String ISSUE_765_YAML = "issue-765.yaml" ;
89
90
private static final String ISSUE_768_JSON = "issue-786.json" ;
90
91
private static final String ISSUE_820_YAML = "issue-820.yaml" ;
92
+ private static final String ISSUE_1032_YAML = "issue-1032.yaml" ;
91
93
92
94
private static final String API_BATCH_PATH = "/api/batch/" ;
93
95
private static final String PETS_PATH = "/pets" ;
@@ -153,6 +155,9 @@ public class V2ConverterTest {
153
155
private static final String ARRAY_VALUES = "[{\" id\" :-1,\" name\" :\" Marvin the Paranoid Android\" }," +
154
156
"{\" id\" :1000000,\" name\" :\" Zaphod Beeblebrox\" ,\" friends\" :[15]}]" ;
155
157
private static final String SCHEMAS_A_REF = "#/components/schemas/A" ;
158
+ private static final String UNIX_TIMESTAMP_QUERY_PARAM = "unixTimestampQuery" ;
159
+ private static final String INTEGER_TYPE = "integer" ;
160
+ private static final String INT64_FORMAT = "int64" ;
156
161
157
162
private static final int MAX_LENGTH = 60 ;
158
163
private static final int REQUIRED_SIZE = 2 ;
@@ -164,7 +169,7 @@ public class V2ConverterTest {
164
169
private static final int MIN_LENGTH = 3 ;
165
170
private static final int NUMBER_VALUE_TWENTY = 20 ;
166
171
private static final double MULTIPLE_OF_VALUE = 0.01D ;
167
- private static final long DEFAULT_VALUE = 11L ;
172
+ private static final int DEFAULT_VALUE = 11 ;
168
173
private static final int EXAMPLE_8_NUMBER = 8 ;
169
174
private static final int EXAMPLE_42_NUMBER = 42 ;
170
175
@@ -762,6 +767,19 @@ public void testIssue820() throws Exception {
762
767
assertEquals (baz .getNullable (), Boolean .FALSE );
763
768
}
764
769
770
+ @ Test (description = "OpenAPI v2 converter - proper IntegerSchema parsing" )
771
+ public void testIssue1032 () throws Exception {
772
+ final OpenAPI oas = getConvertedOpenAPIFromJsonFile (ISSUE_1032_YAML );
773
+ assertNotNull (oas );
774
+ Parameter unixTimestampQueryParameter = oas .getComponents ().getParameters ().get (UNIX_TIMESTAMP_QUERY_PARAM );
775
+ assertNotNull (unixTimestampQueryParameter );
776
+ Schema s = unixTimestampQueryParameter .getSchema ();
777
+ assertTrue ((s instanceof IntegerSchema ), "actual type: " + s );
778
+ IntegerSchema integerSchema = (IntegerSchema ) s ;
779
+ assertEquals (INTEGER_TYPE , integerSchema .getType ());
780
+ assertEquals (INT64_FORMAT , integerSchema .getFormat ());
781
+ }
782
+
765
783
private OpenAPI getConvertedOpenAPIFromJsonFile (String file ) throws IOException , URISyntaxException {
766
784
SwaggerConverter converter = new SwaggerConverter ();
767
785
String swaggerAsString = new String (Files .readAllBytes (Paths .get (getClass ().getClassLoader ().getResource (file ).toURI ())));
@@ -771,4 +789,4 @@ private OpenAPI getConvertedOpenAPIFromJsonFile(String file) throws IOException,
771
789
assertNotNull (result );
772
790
return result .getOpenAPI ();
773
791
}
774
- }
792
+ }
0 commit comments