diff --git a/modules/openapi-json-schema-generator/src/main/java/org/openapitools/codegen/languages/PythonClientCodegen.java b/modules/openapi-json-schema-generator/src/main/java/org/openapitools/codegen/languages/PythonClientCodegen.java index b9d43916c50..b4d14d73961 100644 --- a/modules/openapi-json-schema-generator/src/main/java/org/openapitools/codegen/languages/PythonClientCodegen.java +++ b/modules/openapi-json-schema-generator/src/main/java/org/openapitools/codegen/languages/PythonClientCodegen.java @@ -889,7 +889,7 @@ public String toDefaultValue(Schema p) { @Override public String toModelImport(String name) { // name looks like Cat - return "from " + packagePath() + "." + modelPackage() + "." + toModelFilename(name) + " import " + toModelName(name); + return "from " + packageName + "." + modelPackage() + "." + toModelFilename(name) + " import " + toModelName(name); } @Override diff --git a/modules/openapi-json-schema-generator/src/test/java/org/openapitools/codegen/python/PythonClientTest.java b/modules/openapi-json-schema-generator/src/test/java/org/openapitools/codegen/python/PythonClientTest.java index c69c3753774..b3ffadc8b74 100644 --- a/modules/openapi-json-schema-generator/src/test/java/org/openapitools/codegen/python/PythonClientTest.java +++ b/modules/openapi-json-schema-generator/src/test/java/org/openapitools/codegen/python/PythonClientTest.java @@ -224,4 +224,13 @@ public void testEnumNames() { Assert.assertEquals(enumVars.get(0).get("name"), "DIGIT_THREE_67B9C"); Assert.assertEquals(enumVars.get(1).get("name"), "FFA5A4"); } + + @Test(description = "format imports of models using a package containing dots") + public void testImportWithQualifiedPackageName() throws Exception { + final PythonClientCodegen codegen = new PythonClientCodegen(); + codegen.setPackageName("openapi.client"); + + String importValue = codegen.toModelImport("model_name"); + Assert.assertEquals(importValue, "from openapi.client.model.model_name import ModelName"); + } }