Skip to content

Commit 9dd3036

Browse files
authored
Merge branch 'master' into master
2 parents b4f087f + 0b2dfac commit 9dd3036

File tree

17 files changed

+1011
-237
lines changed

17 files changed

+1011
-237
lines changed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,7 @@ You can include this library from Sonatype OSS for SNAPSHOTS, or Maven central f
111111
<dependency>
112112
<groupId>io.swagger.parser.v3</groupId>
113113
<artifactId>swagger-parser</artifactId>
114-
<version>2.1.0</version>
114+
<version>2.1.1</version>
115115
</dependency>
116116
```
117117

modules/swagger-parser-core/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
<parent>
44
<groupId>io.swagger.parser.v3</groupId>
55
<artifactId>swagger-parser-project</artifactId>
6-
<version>2.1.1-SNAPSHOT</version>
6+
<version>2.1.2-SNAPSHOT</version>
77
<relativePath>../..</relativePath>
88
</parent>
99
<modelVersion>4.0.0</modelVersion>

modules/swagger-parser-core/src/main/java/io/swagger/v3/parser/core/models/ParseOptions.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ public class ParseOptions {
1515
private boolean resolveRequestBody = false;
1616

1717
private boolean oaiAuthor;
18-
private boolean defaultSchemaTypeObject = true;
18+
private boolean inferSchemaType = true;
1919

2020
public boolean isResolve() {
2121
return resolve;
@@ -124,11 +124,11 @@ public boolean isValidateInternalRefs() {
124124
return validateInternalRefs;
125125
}
126126

127-
public boolean isDefaultSchemaTypeObject() {
128-
return defaultSchemaTypeObject;
127+
public boolean isInferSchemaType() {
128+
return inferSchemaType;
129129
}
130130

131-
public void setDefaultSchemaTypeObject(boolean defaultSchemaTypeObject) {
132-
this.defaultSchemaTypeObject = defaultSchemaTypeObject;
131+
public void setInferSchemaType(boolean inferSchemaType) {
132+
this.inferSchemaType = inferSchemaType;
133133
}
134134
}

modules/swagger-parser-v2-converter/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
<parent>
44
<groupId>io.swagger.parser.v3</groupId>
55
<artifactId>swagger-parser-project</artifactId>
6-
<version>2.1.1-SNAPSHOT</version>
6+
<version>2.1.2-SNAPSHOT</version>
77
<relativePath>../..</relativePath>
88
</parent>
99
<modelVersion>4.0.0</modelVersion>

modules/swagger-parser-v2-converter/src/main/java/io/swagger/v3/parser/converter/SwaggerConverter.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -646,7 +646,7 @@ public Operation convert(io.swagger.models.Operation v2Operation) {
646646
operation.setExternalDocs(convert(v2Operation.getExternalDocs()));
647647
}
648648

649-
if (v2Operation.getSecurity() != null && v2Operation.getSecurity().size() > 0) {
649+
if (v2Operation.getSecurity() != null) {
650650
operation.setSecurity(convertSecurityRequirementsMap(v2Operation.getSecurity()));
651651
}
652652

modules/swagger-parser-v2-converter/src/test/java/io/swagger/parser/test/V2ConverterTest.java

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
import io.swagger.v3.oas.models.parameters.RequestBody;
1313
import io.swagger.v3.oas.models.responses.ApiResponse;
1414
import io.swagger.v3.oas.models.security.OAuthFlow;
15+
import io.swagger.v3.oas.models.security.SecurityRequirement;
1516
import io.swagger.v3.oas.models.security.SecurityScheme;
1617
import io.swagger.v3.oas.models.tags.Tag;
1718
import io.swagger.v3.parser.converter.SwaggerConverter;
@@ -94,6 +95,8 @@ public class V2ConverterTest {
9495

9596
private static final String ISSUE_1715_YAML = "issue-1715.yaml";
9697

98+
private static final String ISSUE_1767_YAML = "issue-1767.yaml";
99+
97100
private static final String API_BATCH_PATH = "/api/batch/";
98101
private static final String PETS_PATH = "/pets";
99102
private static final String PET_FIND_BY_STATUS_PATH = "/pet/findByStatus";
@@ -859,6 +862,21 @@ public void testissue1715() throws Exception {
859862
assertEquals("bar", requestBody.getExtensions().get("x-foo"));
860863
}
861864

865+
@Test(description = "OpenAPI v2 converter - security of operation should be set to empty list if that's the case")
866+
public void testIssue1767() throws Exception {
867+
OpenAPI oas = getConvertedOpenAPIFromJsonFile(ISSUE_1767_YAML);
868+
assertNotNull(oas);
869+
870+
List<SecurityRequirement> firstOperationSecurityRequirements =
871+
oas.getPaths().get("/api/not-secured").getGet().getSecurity();
872+
assertNotNull(firstOperationSecurityRequirements);
873+
assertEquals(firstOperationSecurityRequirements.size(), 0);
874+
875+
List<SecurityRequirement> secondOperationSecurityRequirements =
876+
oas.getPaths().get("/api/secured/").getGet().getSecurity();
877+
assertNull(secondOperationSecurityRequirements);
878+
}
879+
862880
@Test()
863881
public void testInlineDefinitionProperty() throws Exception {
864882
SwaggerConverter converter = new SwaggerConverter();
Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
swagger: '2.0'
2+
basePath: /
3+
paths:
4+
/api/not-secured:
5+
get:
6+
responses:
7+
'200':
8+
description: Success
9+
summary: Not secured API
10+
operationId: not_secured_api
11+
security: []
12+
tags:
13+
- not-secured
14+
/api/secured/:
15+
get:
16+
responses:
17+
'200':
18+
description: Success
19+
summary: Secured API
20+
operationId: secured_api
21+
tags:
22+
- secured
23+
info:
24+
title: Sample spec
25+
version: 0.1.0
26+
produces:
27+
- application/json
28+
consumes:
29+
- application/json
30+
securityDefinitions:
31+
api_key:
32+
type: apiKey
33+
in: header
34+
name: Authorization
35+
security:
36+
- api_key: []
37+
tags:
38+
- name: not-secured
39+
description: API not secured
40+
- name: secured
41+
description: API secured

modules/swagger-parser-v3/pom.xml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
<parent>
44
<groupId>io.swagger.parser.v3</groupId>
55
<artifactId>swagger-parser-project</artifactId>
6-
<version>2.1.1-SNAPSHOT</version>
6+
<version>2.1.2-SNAPSHOT</version>
77
<relativePath>../..</relativePath>
88
</parent>
99
<modelVersion>4.0.0</modelVersion>
@@ -64,6 +64,7 @@
6464
<groupId>org.slf4j</groupId>
6565
<artifactId>slf4j-simple</artifactId>
6666
<version>${slf4j-version}</version>
67+
<scope>test</scope>
6768
</dependency>
6869
<dependency>
6970
<groupId>com.github.tomakehurst</groupId>

modules/swagger-parser-v3/src/main/java/io/swagger/v3/parser/extensions/JsonSchemaParserExtension.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
package io.swagger.v3.parser.extensions;
22

3-
import com.fasterxml.jackson.databind.node.ObjectNode;
3+
import com.fasterxml.jackson.databind.JsonNode;
44
import io.swagger.v3.oas.models.OpenAPI;
55
import io.swagger.v3.oas.models.media.Schema;
66
import io.swagger.v3.parser.ResolverCache;
@@ -10,7 +10,7 @@
1010

1111
public interface JsonSchemaParserExtension {
1212

13-
Schema getSchema(ObjectNode node, String location, OpenAPIDeserializer.ParseResult result, Map<String, Object> rootMap, String basePath);
13+
Schema getSchema(JsonNode node, String location, OpenAPIDeserializer.ParseResult result, Map<String, Object> rootMap, String basePath);
1414

1515

1616
boolean resolveSchema(Schema schema, ResolverCache cache, OpenAPI openAPI, boolean openapi31);

0 commit comments

Comments
 (0)