diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractJavaCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractJavaCodegen.java index 2a30ad9327fd..fc87e5bc9682 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractJavaCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractJavaCodegen.java @@ -774,7 +774,7 @@ public String toModelFilename(String name) { @Override public String getTypeDeclaration(Schema p) { - Schema schema = ModelUtils.unaliasSchema(this.openAPI, p); + Schema schema = ModelUtils.unaliasSchema(this.openAPI, p, importMapping); Schema target = ModelUtils.isGenerateAliasAsModel() ? p : schema; if (ModelUtils.isArraySchema(target)) { Schema items = getSchemaItems((ArraySchema) schema); diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/java/AbstractJavaCodegenTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/java/AbstractJavaCodegenTest.java index 800eb90a3ee0..527482fcf78d 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/java/AbstractJavaCodegenTest.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/java/AbstractJavaCodegenTest.java @@ -20,11 +20,6 @@ import io.swagger.v3.oas.models.Components; import io.swagger.v3.oas.models.OpenAPI; import io.swagger.v3.oas.models.media.*; - -import java.time.LocalDate; -import java.time.ZoneId; -import java.time.format.DateTimeFormatter; -import java.util.Date; import org.openapitools.codegen.CodegenConstants; import org.openapitools.codegen.CodegenModel; import org.openapitools.codegen.CodegenType; @@ -35,6 +30,9 @@ import org.testng.annotations.Test; import java.io.File; +import java.time.LocalDate; +import java.time.ZoneId; +import java.util.Date; public class AbstractJavaCodegenTest { @@ -452,6 +450,16 @@ public void toDefaultValueTest() { Assert.assertEquals(defaultLocalDate, LocalDate.parse(defaultValue)); } + @Test + public void getTypeDeclarationGivenImportMappingTest() { + final P_AbstractJavaCodegen codegen = new P_AbstractJavaCodegen(); + codegen.importMapping().put("MyStringType", "com.example.foo"); + codegen.setOpenAPI(new OpenAPI().components(new Components().addSchemas("MyStringType", new StringSchema()))); + Schema schema = new ArraySchema().items(new Schema().$ref("#/components/schemas/MyStringType")); + String defaultValue = codegen.getTypeDeclaration(schema); + Assert.assertEquals(defaultValue, "List"); + } + @Test public void getTypeDeclarationTest() { final P_AbstractJavaCodegen codegen = new P_AbstractJavaCodegen();