diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/IJsonSchemaValidationProperties.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/IJsonSchemaValidationProperties.java index 086852ed7311..1f3ffa0beb29 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/IJsonSchemaValidationProperties.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/IJsonSchemaValidationProperties.java @@ -226,11 +226,8 @@ public interface IJsonSchemaValidationProperties { * @param p the schema which contains the type info */ default void setTypeProperties(Schema p) { - if (ModelUtils.isTypeObjectSchema(p)) { - setIsMap(true); - if (ModelUtils.isModelWithPropertiesOnly(p)) { + if (ModelUtils.isModelWithPropertiesOnly(p)) { setIsModel(true); - } } else if (ModelUtils.isArraySchema(p)) { setIsArray(true); } else if (ModelUtils.isFileSchema(p) && !ModelUtils.isStringSchema(p)) { @@ -282,9 +279,8 @@ public interface IJsonSchemaValidationProperties { setIsNull(true); } else if (ModelUtils.isAnyType(p)) { setIsAnyType(true); - if (ModelUtils.isModelWithPropertiesOnly(p)) { - setIsModel(true); - } + } else if (ModelUtils.isTypeObjectSchema(p)) { + setIsMap(true); } } diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/DefaultCodegenTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/DefaultCodegenTest.java index 5dc4b8491f71..63eb0dda1d28 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/DefaultCodegenTest.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/DefaultCodegenTest.java @@ -4030,8 +4030,7 @@ public class DefaultCodegenTest { CodegenMediaType mt = content.get("application/json"); assertNull(mt.getEncoding()); CodegenProperty cp = mt.getSchema(); - // TODO need to revise the test below - assertTrue(cp.isMap); + assertFalse(cp.isMap); assertTrue(cp.isModel); assertEquals(cp.complexType, "object"); assertEquals(cp.baseName, "SchemaForRequestParameterCoordinatesInlineSchemaApplicationJson"); diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/javascript/JavascriptClientCodegenTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/javascript/JavascriptClientCodegenTest.java index 010634f197b2..8970c092c0db 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/javascript/JavascriptClientCodegenTest.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/javascript/JavascriptClientCodegenTest.java @@ -64,7 +64,7 @@ public class JavascriptClientCodegenTest { @Test(description = "test defaultValueWithParam for model's properties") public void bodyParameterTest() { - final OpenAPI openAPI = TestUtils.parseFlattenSpec("src/test/resources/2_0/petstore.yaml"); + final OpenAPI openAPI = TestUtils.parseFlattenSpec("src/test/resources/3_0/petstore.yaml"); final JavascriptClientCodegen codegen = new JavascriptClientCodegen(); final Schema pet = openAPI.getComponents().getSchemas().get("Pet"); codegen.setOpenAPI(openAPI); @@ -98,7 +98,7 @@ public class JavascriptClientCodegenTest { @Test(description = "test isDefault in the response") public void testResponseIsDefault() throws Exception { - final OpenAPI openAPI = TestUtils.parseFlattenSpec("src/test/resources/2_0/petstore.yaml"); + final OpenAPI openAPI = TestUtils.parseFlattenSpec("src/test/resources/3_0/petstore.yaml"); final DefaultCodegen codegen = new DefaultCodegen(); codegen.setOpenAPI(openAPI); diff --git a/samples/client/echo_api/java/apache-httpclient/docs/QueryApi.md b/samples/client/echo_api/java/apache-httpclient/docs/QueryApi.md index 2ced9d0c8d3f..7c8286b9ffdd 100644 --- a/samples/client/echo_api/java/apache-httpclient/docs/QueryApi.md +++ b/samples/client/echo_api/java/apache-httpclient/docs/QueryApi.md @@ -245,7 +245,7 @@ public class Example { defaultClient.setBasePath("http://localhost:3000"); QueryApi apiInstance = new QueryApi(defaultClient); - Pet queryObject = new HashMap(); // Pet | + Pet queryObject = new Pet(); // Pet | try { String result = apiInstance.testQueryStyleDeepObjectExplodeTrueObject(queryObject); System.out.println(result); @@ -377,7 +377,7 @@ public class Example { defaultClient.setBasePath("http://localhost:3000"); QueryApi apiInstance = new QueryApi(defaultClient); - TestQueryStyleFormExplodeTrueArrayStringQueryObjectParameter queryObject = new HashMap(); // TestQueryStyleFormExplodeTrueArrayStringQueryObjectParameter | + TestQueryStyleFormExplodeTrueArrayStringQueryObjectParameter queryObject = new TestQueryStyleFormExplodeTrueArrayStringQueryObjectParameter(); // TestQueryStyleFormExplodeTrueArrayStringQueryObjectParameter | try { String result = apiInstance.testQueryStyleFormExplodeTrueArrayString(queryObject); System.out.println(result); @@ -443,7 +443,7 @@ public class Example { defaultClient.setBasePath("http://localhost:3000"); QueryApi apiInstance = new QueryApi(defaultClient); - Pet queryObject = new HashMap(); // Pet | + Pet queryObject = new Pet(); // Pet | try { String result = apiInstance.testQueryStyleFormExplodeTrueObject(queryObject); System.out.println(result); diff --git a/samples/client/echo_api/java/native/docs/QueryApi.md b/samples/client/echo_api/java/native/docs/QueryApi.md index ba652bdea212..95070165f4e4 100644 --- a/samples/client/echo_api/java/native/docs/QueryApi.md +++ b/samples/client/echo_api/java/native/docs/QueryApi.md @@ -465,7 +465,7 @@ public class Example { defaultClient.setBasePath("http://localhost:3000"); QueryApi apiInstance = new QueryApi(defaultClient); - Pet queryObject = new HashMap(); // Pet | + Pet queryObject = new Pet(); // Pet | try { String result = apiInstance.testQueryStyleDeepObjectExplodeTrueObject(queryObject); System.out.println(result); @@ -531,7 +531,7 @@ public class Example { defaultClient.setBasePath("http://localhost:3000"); QueryApi apiInstance = new QueryApi(defaultClient); - Pet queryObject = new HashMap(); // Pet | + Pet queryObject = new Pet(); // Pet | try { ApiResponse response = apiInstance.testQueryStyleDeepObjectExplodeTrueObjectWithHttpInfo(queryObject); System.out.println("Status code: " + response.getStatusCode()); @@ -733,7 +733,7 @@ public class Example { defaultClient.setBasePath("http://localhost:3000"); QueryApi apiInstance = new QueryApi(defaultClient); - TestQueryStyleFormExplodeTrueArrayStringQueryObjectParameter queryObject = new HashMap(); // TestQueryStyleFormExplodeTrueArrayStringQueryObjectParameter | + TestQueryStyleFormExplodeTrueArrayStringQueryObjectParameter queryObject = new TestQueryStyleFormExplodeTrueArrayStringQueryObjectParameter(); // TestQueryStyleFormExplodeTrueArrayStringQueryObjectParameter | try { String result = apiInstance.testQueryStyleFormExplodeTrueArrayString(queryObject); System.out.println(result); @@ -799,7 +799,7 @@ public class Example { defaultClient.setBasePath("http://localhost:3000"); QueryApi apiInstance = new QueryApi(defaultClient); - TestQueryStyleFormExplodeTrueArrayStringQueryObjectParameter queryObject = new HashMap(); // TestQueryStyleFormExplodeTrueArrayStringQueryObjectParameter | + TestQueryStyleFormExplodeTrueArrayStringQueryObjectParameter queryObject = new TestQueryStyleFormExplodeTrueArrayStringQueryObjectParameter(); // TestQueryStyleFormExplodeTrueArrayStringQueryObjectParameter | try { ApiResponse response = apiInstance.testQueryStyleFormExplodeTrueArrayStringWithHttpInfo(queryObject); System.out.println("Status code: " + response.getStatusCode()); @@ -867,7 +867,7 @@ public class Example { defaultClient.setBasePath("http://localhost:3000"); QueryApi apiInstance = new QueryApi(defaultClient); - Pet queryObject = new HashMap(); // Pet | + Pet queryObject = new Pet(); // Pet | try { String result = apiInstance.testQueryStyleFormExplodeTrueObject(queryObject); System.out.println(result); @@ -933,7 +933,7 @@ public class Example { defaultClient.setBasePath("http://localhost:3000"); QueryApi apiInstance = new QueryApi(defaultClient); - Pet queryObject = new HashMap(); // Pet | + Pet queryObject = new Pet(); // Pet | try { ApiResponse response = apiInstance.testQueryStyleFormExplodeTrueObjectWithHttpInfo(queryObject); System.out.println("Status code: " + response.getStatusCode()); diff --git a/samples/client/echo_api/java/okhttp-gson/docs/QueryApi.md b/samples/client/echo_api/java/okhttp-gson/docs/QueryApi.md index 48e50849570d..250dcac4f1ee 100644 --- a/samples/client/echo_api/java/okhttp-gson/docs/QueryApi.md +++ b/samples/client/echo_api/java/okhttp-gson/docs/QueryApi.md @@ -231,7 +231,7 @@ public class Example { defaultClient.setBasePath("http://localhost:3000"); QueryApi apiInstance = new QueryApi(defaultClient); - Pet queryObject = new HashMap(); // Pet | + Pet queryObject = new Pet(); // Pet | try { String result = apiInstance.testQueryStyleDeepObjectExplodeTrueObject(queryObject); System.out.println(result); @@ -355,7 +355,7 @@ public class Example { defaultClient.setBasePath("http://localhost:3000"); QueryApi apiInstance = new QueryApi(defaultClient); - TestQueryStyleFormExplodeTrueArrayStringQueryObjectParameter queryObject = new HashMap(); // TestQueryStyleFormExplodeTrueArrayStringQueryObjectParameter | + TestQueryStyleFormExplodeTrueArrayStringQueryObjectParameter queryObject = new TestQueryStyleFormExplodeTrueArrayStringQueryObjectParameter(); // TestQueryStyleFormExplodeTrueArrayStringQueryObjectParameter | try { String result = apiInstance.testQueryStyleFormExplodeTrueArrayString(queryObject); System.out.println(result); @@ -417,7 +417,7 @@ public class Example { defaultClient.setBasePath("http://localhost:3000"); QueryApi apiInstance = new QueryApi(defaultClient); - Pet queryObject = new HashMap(); // Pet | + Pet queryObject = new Pet(); // Pet | try { String result = apiInstance.testQueryStyleFormExplodeTrueObject(queryObject); System.out.println(result); diff --git a/samples/client/echo_api/python/docs/QueryApi.md b/samples/client/echo_api/python/docs/QueryApi.md index 989376e4e195..d87748883d58 100644 --- a/samples/client/echo_api/python/docs/QueryApi.md +++ b/samples/client/echo_api/python/docs/QueryApi.md @@ -231,6 +231,7 @@ Test query parameter(s) import time import os import openapi_client +from openapi_client.models.pet import Pet from openapi_client.rest import ApiException from pprint import pprint @@ -245,7 +246,7 @@ configuration = openapi_client.Configuration( with openapi_client.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = openapi_client.QueryApi(api_client) - query_object = {'key': openapi_client.Pet()} # Pet | (optional) + query_object = openapi_client.Pet() # Pet | (optional) try: # Test query parameter(s) @@ -361,6 +362,7 @@ Test query parameter(s) import time import os import openapi_client +from openapi_client.models.test_query_style_form_explode_true_array_string_query_object_parameter import TestQueryStyleFormExplodeTrueArrayStringQueryObjectParameter from openapi_client.rest import ApiException from pprint import pprint @@ -375,7 +377,7 @@ configuration = openapi_client.Configuration( with openapi_client.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = openapi_client.QueryApi(api_client) - query_object = {'key': openapi_client.TestQueryStyleFormExplodeTrueArrayStringQueryObjectParameter()} # TestQueryStyleFormExplodeTrueArrayStringQueryObjectParameter | (optional) + query_object = openapi_client.TestQueryStyleFormExplodeTrueArrayStringQueryObjectParameter() # TestQueryStyleFormExplodeTrueArrayStringQueryObjectParameter | (optional) try: # Test query parameter(s) @@ -426,6 +428,7 @@ Test query parameter(s) import time import os import openapi_client +from openapi_client.models.pet import Pet from openapi_client.rest import ApiException from pprint import pprint @@ -440,7 +443,7 @@ configuration = openapi_client.Configuration( with openapi_client.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = openapi_client.QueryApi(api_client) - query_object = {'key': openapi_client.Pet()} # Pet | (optional) + query_object = openapi_client.Pet() # Pet | (optional) try: # Test query parameter(s) diff --git a/samples/client/echo_api/python/openapi_client/api/query_api.py b/samples/client/echo_api/python/openapi_client/api/query_api.py index c0bb2007e967..1c439d2ffa8b 100644 --- a/samples/client/echo_api/python/openapi_client/api/query_api.py +++ b/samples/client/echo_api/python/openapi_client/api/query_api.py @@ -24,9 +24,11 @@ from datetime import date, datetime from pydantic import StrictBool, StrictInt, StrictStr -from typing import Any, Dict, Optional +from typing import Any, Optional +from openapi_client.models.pet import Pet from openapi_client.models.string_enum_ref import StringEnumRef +from openapi_client.models.test_query_style_form_explode_true_array_string_query_object_parameter import TestQueryStyleFormExplodeTrueArrayStringQueryObjectParameter from openapi_client.api_client import ApiClient from openapi_client.api_response import ApiResponse @@ -504,7 +506,7 @@ class QueryApi(object): _request_auth=_params.get('_request_auth')) @validate_arguments - def test_query_style_deep_object_explode_true_object(self, query_object : Optional[Dict[str, Dict[str, Any]]] = None, **kwargs) -> str: # noqa: E501 + def test_query_style_deep_object_explode_true_object(self, query_object : Optional[Pet] = None, **kwargs) -> str: # noqa: E501 """Test query parameter(s) # noqa: E501 Test query parameter(s) # noqa: E501 @@ -533,7 +535,7 @@ class QueryApi(object): return self.test_query_style_deep_object_explode_true_object_with_http_info(query_object, **kwargs) # noqa: E501 @validate_arguments - def test_query_style_deep_object_explode_true_object_with_http_info(self, query_object : Optional[Dict[str, Dict[str, Any]]] = None, **kwargs) -> ApiResponse: # noqa: E501 + def test_query_style_deep_object_explode_true_object_with_http_info(self, query_object : Optional[Pet] = None, **kwargs) -> ApiResponse: # noqa: E501 """Test query parameter(s) # noqa: E501 Test query parameter(s) # noqa: E501 @@ -782,7 +784,7 @@ class QueryApi(object): _request_auth=_params.get('_request_auth')) @validate_arguments - def test_query_style_form_explode_true_array_string(self, query_object : Optional[Dict[str, Any]] = None, **kwargs) -> str: # noqa: E501 + def test_query_style_form_explode_true_array_string(self, query_object : Optional[TestQueryStyleFormExplodeTrueArrayStringQueryObjectParameter] = None, **kwargs) -> str: # noqa: E501 """Test query parameter(s) # noqa: E501 Test query parameter(s) # noqa: E501 @@ -811,7 +813,7 @@ class QueryApi(object): return self.test_query_style_form_explode_true_array_string_with_http_info(query_object, **kwargs) # noqa: E501 @validate_arguments - def test_query_style_form_explode_true_array_string_with_http_info(self, query_object : Optional[Dict[str, Any]] = None, **kwargs) -> ApiResponse: # noqa: E501 + def test_query_style_form_explode_true_array_string_with_http_info(self, query_object : Optional[TestQueryStyleFormExplodeTrueArrayStringQueryObjectParameter] = None, **kwargs) -> ApiResponse: # noqa: E501 """Test query parameter(s) # noqa: E501 Test query parameter(s) # noqa: E501 @@ -921,7 +923,7 @@ class QueryApi(object): _request_auth=_params.get('_request_auth')) @validate_arguments - def test_query_style_form_explode_true_object(self, query_object : Optional[Dict[str, Any]] = None, **kwargs) -> str: # noqa: E501 + def test_query_style_form_explode_true_object(self, query_object : Optional[Pet] = None, **kwargs) -> str: # noqa: E501 """Test query parameter(s) # noqa: E501 Test query parameter(s) # noqa: E501 @@ -950,7 +952,7 @@ class QueryApi(object): return self.test_query_style_form_explode_true_object_with_http_info(query_object, **kwargs) # noqa: E501 @validate_arguments - def test_query_style_form_explode_true_object_with_http_info(self, query_object : Optional[Dict[str, Any]] = None, **kwargs) -> ApiResponse: # noqa: E501 + def test_query_style_form_explode_true_object_with_http_info(self, query_object : Optional[Pet] = None, **kwargs) -> ApiResponse: # noqa: E501 """Test query parameter(s) # noqa: E501 Test query parameter(s) # noqa: E501 diff --git a/samples/openapi3/client/petstore/go/go-petstore/docs/FakeAPI.md b/samples/openapi3/client/petstore/go/go-petstore/docs/FakeAPI.md index 6bf46a398882..9f5d68bfd1a7 100644 --- a/samples/openapi3/client/petstore/go/go-petstore/docs/FakeAPI.md +++ b/samples/openapi3/client/petstore/go/go-petstore/docs/FakeAPI.md @@ -932,8 +932,8 @@ import ( ) func main() { - testPet := map[string][]openapiclient.Pet{"key": map[string]interface{}{ ... }} // Pet | (optional) - inputOptions := map[string][]openapiclient.Category{"key": map[string]interface{}{ ... }} // Category | (optional) + testPet := *openapiclient.NewPet("doggie", []string{"PhotoUrls_example"}) // Pet | (optional) + inputOptions := *openapiclient.NewCategory("Name_example") // Category | (optional) configuration := openapiclient.NewConfiguration() apiClient := openapiclient.NewAPIClient(configuration)