Skip to content

Commit 5ca28bf

Browse files
authored
Merge pull request #1154 from JFCote/fix-1146
Fix #1146
2 parents 6f414d9 + 52c0559 commit 5ca28bf

File tree

3 files changed

+46
-1
lines changed

3 files changed

+46
-1
lines changed

modules/swagger-parser/src/main/java/io/swagger/parser/util/SwaggerDeserializer.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -218,7 +218,7 @@ private boolean isPathParamDefined(String pathParam, List<Parameter> parameters)
218218
return false;
219219
} else {
220220
for (Parameter parameter : parameters) {
221-
if (pathParam.equals(parameter.getName()) && "path".equals(parameter.getIn())) {
221+
if (parameter instanceof RefParameter || (pathParam.equals(parameter.getName()) && "path".equals(parameter.getIn()))) {
222222
return true;
223223
}
224224
}

modules/swagger-parser/src/test/java/io/swagger/parser/SwaggerParserTest.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -85,6 +85,12 @@ public void testIssue111() {
8585
assertNotNull(result.getSwagger());
8686
}
8787

88+
@Test
89+
public void testIssue1146() {
90+
SwaggerDeserializationResult result = new SwaggerParser().readWithInfo("issue-1146.yaml", null, true);
91+
assertEquals(0, result.getMessages().size());
92+
}
93+
8894
@Test
8995
public void testIssueDefinitionWithDots_2() {
9096
Swagger swagger = new SwaggerParser().read("SimpleAPI.yaml");
Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
swagger: "2.0"
2+
info:
3+
description: "Test"
4+
version: "1.0.0"
5+
title: "Swagger v2 example"
6+
termsOfService: "http://swagger.io/terms/"
7+
contact:
8+
email: "apiteam@swagger.io"
9+
license:
10+
name: "Apache 2.0"
11+
url: "http://www.apache.org/licenses/LICENSE-2.0.html"
12+
host: "petstore.swagger.io"
13+
basePath: "/v2"
14+
schemes:
15+
- "https"
16+
- "http"
17+
paths:
18+
/brands/{brand-id}/stations:
19+
get:
20+
tags:
21+
- Brand
22+
summary: Returns a list of the brand's stations
23+
operationId: getBrandStations
24+
parameters:
25+
- $ref: "#/parameters/brand-id"
26+
- in: query
27+
name: available-to-client-only
28+
required: true
29+
type: boolean
30+
responses:
31+
200:
32+
description: OK
33+
parameters:
34+
brand-id:
35+
in: path
36+
description: this is a test
37+
name: brand-id
38+
required: true
39+
type: string

0 commit comments

Comments
 (0)