Skip to content

Commit 883b72e

Browse files
committed
Change sanizeName logic
1 parent 4df801e commit 883b72e

File tree

3 files changed

+64
-12
lines changed

3 files changed

+64
-12
lines changed

src/main/java/io/swagger/codegen/languages/java/AbstractJavaCodegen.java

+3-4
Original file line numberDiff line numberDiff line change
@@ -508,7 +508,7 @@ public String toApiFilename(String name) {
508508
@Override
509509
public String toVarName(String name) {
510510
// sanitize name
511-
name = sanitizeName(name); // FIXME: a parameter should not be assigned. Also declare the methods parameters as 'final'.
511+
name = sanitizeVarName(name); // FIXME: a parameter should not be assigned. Also declare the methods parameters as 'final'.
512512

513513
if (name.toLowerCase().matches("^_*class$")) {
514514
return "propertyClass";
@@ -584,7 +584,7 @@ public String toModelName(final String name) {
584584
return importMapping.get(name);
585585
}
586586

587-
final String sanitizedName = super.sanitizeName(name);
587+
final String sanitizedName = sanitizeName(name);
588588

589589
String nameWithPrefixSuffix = sanitizedName;
590590
if (!StringUtils.isEmpty(modelNamePrefix)) {
@@ -1058,8 +1058,7 @@ public CodegenOperation fromOperation(String path, String httpMethod, Operation
10581058
return op;
10591059
}
10601060

1061-
@Override
1062-
public String sanitizeName(String name) {
1061+
public String sanitizeVarName(String name) {
10631062
if (name == null) {
10641063
LOGGER.warn("String to be sanitized is null. Default to " + Object.class.getSimpleName());
10651064
return Object.class.getSimpleName();

src/test/java/io/swagger/codegen/languages/java/AbstractJavaCodegenTest.java

+15-8
Original file line numberDiff line numberDiff line change
@@ -112,13 +112,20 @@ public void preprocessSwaggerWithNoFormOrBodyParamsDoesNotSetContentType() {
112112

113113
@Test
114114
public void convertVarName() throws Exception {
115-
AbstractJavaCodegen codegen = new JavaClientCodegen();
116-
Assert.assertEquals(codegen.toVarName("name"), "name");
117-
Assert.assertEquals(codegen.toVarName("$name"), "$name");
118-
Assert.assertEquals(codegen.toVarName("nam$$e"), "nam$$e");
119-
Assert.assertEquals(codegen.toVarName("_name"), "_name");
120-
Assert.assertEquals(codegen.toVarName("user-name"), "userName");
121-
Assert.assertEquals(codegen.toVarName("user_name"), "userName");
122-
Assert.assertEquals(codegen.toVarName("_user_name"), "_userName");
115+
Assert.assertEquals(fakeJavaCodegen.toVarName("name"), "name");
116+
Assert.assertEquals(fakeJavaCodegen.toVarName("$name"), "$name");
117+
Assert.assertEquals(fakeJavaCodegen.toVarName("nam$$e"), "nam$$e");
118+
Assert.assertEquals(fakeJavaCodegen.toVarName("_name"), "_name");
119+
Assert.assertEquals(fakeJavaCodegen.toVarName("user-name"), "userName");
120+
Assert.assertEquals(fakeJavaCodegen.toVarName("user_name"), "userName");
121+
Assert.assertEquals(fakeJavaCodegen.toVarName("_user_name"), "_userName");
122+
}
123+
124+
@Test
125+
public void convertModelName() throws Exception {
126+
Assert.assertEquals(fakeJavaCodegen.toModelName("name"), "Name");
127+
Assert.assertEquals(fakeJavaCodegen.toModelName("$name"), "Name");
128+
Assert.assertEquals(fakeJavaCodegen.toModelName("nam#e"), "Name");
129+
Assert.assertEquals(fakeJavaCodegen.toModelName("$another-fake?"), "AnotherFake");
123130
}
124131
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
package io.swagger.codegen.languages.java;
2+
3+
import io.swagger.codegen.CodegenArgument;
4+
import io.swagger.codegen.CodegenType;
5+
import org.testng.Assert;
6+
import org.testng.annotations.Test;
7+
import java.util.List;
8+
9+
public class AbstractJavaJAXRSServerCodegenTest {
10+
11+
private final AbstractJavaJAXRSServerCodegen fakeJavaJAXRSCodegen = new AbstractJavaJAXRSServerCodegen() {
12+
@Override
13+
public String getArgumentsLocation() {
14+
return null;
15+
}
16+
17+
@Override
18+
public CodegenType getTag() {
19+
return null;
20+
}
21+
22+
@Override
23+
public String getName() {
24+
return null;
25+
}
26+
27+
@Override
28+
public String getHelp() {
29+
return null;
30+
}
31+
32+
@Override
33+
public List<CodegenArgument> readLanguageArguments() {
34+
return null;
35+
}
36+
};
37+
38+
@Test
39+
public void convertApiName() throws Exception {
40+
Assert.assertEquals(fakeJavaJAXRSCodegen.toApiName("name"), "NameApi");
41+
Assert.assertEquals(fakeJavaJAXRSCodegen.toApiName("$name"), "NameApi");
42+
Assert.assertEquals(fakeJavaJAXRSCodegen.toApiName("nam#e"), "NameApi");
43+
Assert.assertEquals(fakeJavaJAXRSCodegen.toApiName("$another-fake?"), "AnotherFakeApi");
44+
Assert.assertEquals(fakeJavaJAXRSCodegen.toApiName("fake_classname_tags 123#$%^"), "FakeClassnameTags123Api");
45+
}
46+
}

0 commit comments

Comments
 (0)