forked from loafle/openapi-generator-original
[Python] Add enum support when building default values for model properties when using $ref (#18796)
* Add enum support when building default values for model properties * Update enum handling for Python for enum references * Remove unused method * Update mustaches for FastAPI, Pydantic, and Python for default values * Address PR feedback and rebase main * Remove old 2_0 samples
This commit is contained in:
@@ -14,8 +14,8 @@ Name | Type | Description | Notes
|
||||
**enum_string_vendor_ext** | **str** | | [optional]
|
||||
**outer_enum** | [**OuterEnum**](OuterEnum.md) | | [optional]
|
||||
**outer_enum_integer** | [**OuterEnumInteger**](OuterEnumInteger.md) | | [optional]
|
||||
**outer_enum_default_value** | [**OuterEnumDefaultValue**](OuterEnumDefaultValue.md) | | [optional]
|
||||
**outer_enum_integer_default_value** | [**OuterEnumIntegerDefaultValue**](OuterEnumIntegerDefaultValue.md) | | [optional]
|
||||
**outer_enum_default_value** | [**OuterEnumDefaultValue**](OuterEnumDefaultValue.md) | | [optional] [default to OuterEnumDefaultValue.PLACED]
|
||||
**outer_enum_integer_default_value** | [**OuterEnumIntegerDefaultValue**](OuterEnumIntegerDefaultValue.md) | | [optional] [default to OuterEnumIntegerDefaultValue.NUMBER_0]
|
||||
|
||||
## Example
|
||||
|
||||
|
||||
@@ -130,7 +130,7 @@ configuration = petstore_api.Configuration(
|
||||
with petstore_api.ApiClient(configuration) as api_client:
|
||||
# Create an instance of the API class
|
||||
api_instance = petstore_api.FakeApi(api_client)
|
||||
enum_ref = petstore_api.EnumClass() # EnumClass | enum reference (optional)
|
||||
enum_ref = -efg # EnumClass | enum reference (optional) (default to -efg)
|
||||
|
||||
try:
|
||||
# test enum reference query parameter
|
||||
@@ -146,7 +146,7 @@ with petstore_api.ApiClient(configuration) as api_client:
|
||||
|
||||
Name | Type | Description | Notes
|
||||
------------- | ------------- | ------------- | -------------
|
||||
**enum_ref** | [**EnumClass**](.md)| enum reference | [optional]
|
||||
**enum_ref** | [**EnumClass**](.md)| enum reference | [optional] [default to -efg]
|
||||
|
||||
### Return type
|
||||
|
||||
|
||||
@@ -39,8 +39,8 @@ class EnumTest(BaseModel):
|
||||
enum_string_vendor_ext: Optional[StrictStr] = None
|
||||
outer_enum: Optional[OuterEnum] = Field(default=None, alias="outerEnum")
|
||||
outer_enum_integer: Optional[OuterEnumInteger] = Field(default=None, alias="outerEnumInteger")
|
||||
outer_enum_default_value: Optional[OuterEnumDefaultValue] = Field(default=None, alias="outerEnumDefaultValue")
|
||||
outer_enum_integer_default_value: Optional[OuterEnumIntegerDefaultValue] = Field(default=None, alias="outerEnumIntegerDefaultValue")
|
||||
outer_enum_default_value: Optional[OuterEnumDefaultValue] = Field(default=OuterEnumDefaultValue.PLACED, alias="outerEnumDefaultValue")
|
||||
outer_enum_integer_default_value: Optional[OuterEnumIntegerDefaultValue] = Field(default=OuterEnumIntegerDefaultValue.NUMBER_0, alias="outerEnumIntegerDefaultValue")
|
||||
additional_properties: Dict[str, Any] = {}
|
||||
__properties: ClassVar[List[str]] = ["enum_string", "enum_string_required", "enum_integer_default", "enum_integer", "enum_number", "enum_number_vendor_ext", "enum_string_vendor_ext", "outerEnum", "outerEnumInteger", "outerEnumDefaultValue", "outerEnumIntegerDefaultValue"]
|
||||
|
||||
@@ -183,8 +183,8 @@ class EnumTest(BaseModel):
|
||||
"enum_string_vendor_ext": obj.get("enum_string_vendor_ext"),
|
||||
"outerEnum": obj.get("outerEnum"),
|
||||
"outerEnumInteger": obj.get("outerEnumInteger"),
|
||||
"outerEnumDefaultValue": obj.get("outerEnumDefaultValue"),
|
||||
"outerEnumIntegerDefaultValue": obj.get("outerEnumIntegerDefaultValue")
|
||||
"outerEnumDefaultValue": obj.get("outerEnumDefaultValue") if obj.get("outerEnumDefaultValue") is not None else OuterEnumDefaultValue.PLACED,
|
||||
"outerEnumIntegerDefaultValue": obj.get("outerEnumIntegerDefaultValue") if obj.get("outerEnumIntegerDefaultValue") is not None else OuterEnumIntegerDefaultValue.NUMBER_0
|
||||
})
|
||||
# store additional fields in additional_properties
|
||||
for _key in obj.keys():
|
||||
|
||||
Reference in New Issue
Block a user