Skip to content

Commit 14e9c90

Browse files
committed
ensure body parameter name is preserved
1 parent 6b8215b commit 14e9c90

File tree

2 files changed

+11
-4
lines changed

2 files changed

+11
-4
lines changed

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

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -550,6 +550,7 @@ public Operation convert(io.swagger.models.Operation v2Operation) {
550550
}
551551
operation.setDeprecated(v2Operation.isDeprecated());
552552
operation.setOperationId(v2Operation.getOperationId());
553+
operation.setExtensions(convert(v2Operation.getVendorExtensions()));
553554

554555
operation.setTags(v2Operation.getTags());
555556

@@ -561,6 +562,7 @@ public Operation convert(io.swagger.models.Operation v2Operation) {
561562
formParams.add(param);
562563
} else if ("body".equals(param.getIn())) {
563564
operation.setRequestBody(convertParameterToRequestBody(param, v2Operation.getConsumes()));
565+
operation.addExtension("x-codegen-request-body-name", param.getName());
564566
} else {
565567
Parameter convert = convert(param);
566568
String $ref = convert.get$ref();
@@ -607,8 +609,6 @@ public Operation convert(io.swagger.models.Operation v2Operation) {
607609
operation.setSecurity(convertSecurityRequirementsMap(v2Operation.getSecurity()));
608610
}
609611

610-
operation.setExtensions(convert(v2Operation.getVendorExtensions()));
611-
612612
return operation;
613613
}
614614

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

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -669,8 +669,15 @@ public void testIssue758() throws Exception {
669669
public void testIssue762() throws Exception {
670670
final OpenAPI oas = getConvertedOpenAPIFromJsonFile(ISSUE_762_JSON);
671671
assertNotNull(oas);
672-
}
673-
672+
}
673+
674+
@Test(description = "OpenAPI v2 Converter: Ensure body name is preserved in x-codegen-request-body-name extension")
675+
public void testPreserveBodyParameterName() throws Exception {
676+
final OpenAPI oas = getConvertedOpenAPIFromJsonFile(ISSUE_762_JSON);
677+
assertNotNull(oas);
678+
assertEquals(oas.getPaths().get("/").getPut().getExtensions().get("x-codegen-request-body-name"), "pet");
679+
}
680+
674681
@Test(description = "requestBody not correctly populated when Parameters is a list of $refs (OAS 2 to 3 conversion)")
675682
public void testIssue765() throws Exception {
676683
final OpenAPI oas = getConvertedOpenAPIFromJsonFile(ISSUE_765_YAML);

0 commit comments

Comments
 (0)