Python-exp clean up model classnames (#7054)

* Adds lazy_import, removes python-exp java class renaming code, partial removal of getPythonClassName call sites

Fixes PythonClientExperimentalTest.java

Python-exp smaples regeneration

Revers makefile

Reverst pom.xml

Fixes model imports in models.__init__

Updates docstring, omits lazy import in additional properties if we dont need it

Improves additional_properties_type assignment if None

Removes getPythonClassName

Fixes python-exp tests

* Removes unused makefiles
This commit is contained in:
Justin Black 2020-07-27 18:35:41 -07:00 committed by GitHub
parent 2743242ef4
commit ee0686e13f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
419 changed files with 2491 additions and 2229 deletions

View File

@ -329,134 +329,72 @@ public class PythonClientExperimentalCodegen extends PythonClientCodegen {
@Override
public String toModelImport(String name) {
// name looks like cat.Cat
String moduleName = name.split("\\.")[0];
// https://exceptionshub.com/circular-or-cyclic-imports-in-python.html
return "from " + modelPackage() + " import "+ moduleName;
}
private String robustImport(String name) {
// name looks like cat.Cat
String moduleName = name.split("\\.")[0];
// https://exceptionshub.com/circular-or-cyclic-imports-in-python.html
String modelImport = "try:\n from " + modelPackage() +
" import " + moduleName+ "\nexcept ImportError:\n " +
moduleName + " = sys.modules[\n '" + modelPackage() + "." + moduleName + "']";
return modelImport;
}
private String getPythonClassName(String name) {
// name looks like cat.Cat or Cat
String[] pieces = name.split("\\.");
if (pieces.length == 1) {
return pieces[0];
}
return pieces[1];
}
private void fixOperationImports(Set<String> imports) {
if (imports.size() == 0) {
return;
}
String[] modelNames = imports.toArray(new String[0]);
imports.clear();
// loops through imports and converts them all from 'module.Class' to 'from models.module import module'
for (String modelName : modelNames) {
// if a modelName lacks the module (Pet) then we convert it to pet.Pet
if (modelName.indexOf(".") == -1) {
modelName = toModelName(modelName);
}
imports.add(toModelImport(modelName));
}
// name looks like Cat
return "from " + modelPackage() + "." + toModelFilename(name) + " import "+ name;
}
@Override
@SuppressWarnings("static-method")
public Map<String, Object> postProcessOperationsWithModels(Map<String, Object> objs, List<Object> allModels) {
// fix the imports that each model has, add the module reference to the model
// loops through imports and converts them all
// from 'Pet' to 'from petstore_api.model.pet import Pet'
HashMap<String, Object> val = (HashMap<String, Object>)objs.get("operations");
ArrayList<CodegenOperation> operations = (ArrayList<CodegenOperation>) val.get("operation");
ArrayList<HashMap<String, String>> imports = (ArrayList<HashMap<String, String>>)objs.get("imports");
imports.clear();
for (CodegenOperation operation : operations) {
fixOperationImports(operation.imports);
for (String thisImport : operation.imports) {
HashMap<String, String> higherImport = new HashMap<String, String>();
higherImport.put("import", thisImport);
if (!imports.contains(higherImport)) {
imports.add(higherImport);
if (operation.imports.size() == 0) {
continue;
}
String[] modelNames = operation.imports.toArray(new String[0]);
operation.imports.clear();
for (String modelName : modelNames) {
operation.imports.add(toModelImport(modelName));
}
}
return objs;
}
private void fixModelImports(Set<String> imports) {
// loops through imports and converts them all from 'module.Class' to 'import models.module as module'
if (imports.size() == 0) {
return;
}
String[] modelNames = imports.toArray(new String[0]);
imports.clear();
for (String modelName : modelNames) {
imports.add(robustImport(modelName));
}
}
/**
* Override with special post-processing for all models.
*/
@SuppressWarnings({"static-method", "unchecked"})
public Map<String, Object> postProcessAllModels(Map<String, Object> objs) {
super.postProcessAllModels(objs);
// loop through all models and delete ones where type!=object and the model has no validations and enums
// we will remove them because they are not needed
Map<String, Schema> modelSchemasToRemove = new HashMap<String, Schema>();
for (Map.Entry<String, Object> entry : objs.entrySet()) {
Map<String, Object> inner = (Map<String, Object>) entry.getValue();
List<Map<String, Object>> models = (List<Map<String, Object>>) inner.get("models");
for (Map<String, Object> mo : models) {
CodegenModel cm = (CodegenModel) mo.get("model");
// make sure discriminator models are included in imports
CodegenDiscriminator discriminator = cm.discriminator;
if (discriminator != null) {
Set<CodegenDiscriminator.MappedModel> mappedModels = discriminator.getMappedModels();
for (CodegenDiscriminator.MappedModel mappedModel : mappedModels) {
String otherModelName = mappedModel.getModelName();
cm.imports.add(otherModelName);
}
}
// add imports for anyOf, allOf, oneOf
ArrayList<Set<String>> composedSchemaSets = new ArrayList<Set<String>>();
composedSchemaSets.add(cm.allOf);
composedSchemaSets.add(cm.anyOf);
composedSchemaSets.add(cm.oneOf);
for (Set<String> importSet : composedSchemaSets) {
for (String otherModelName : importSet) {
if (!languageSpecificPrimitives.contains(otherModelName)) {
cm.imports.add(otherModelName);
}
}
}
Schema modelSchema = ModelUtils.getSchema(this.openAPI, cm.name);
CodegenProperty modelProperty = fromProperty("value", modelSchema);
// import complex type from additional properties
// TODO can I remove this? DOes it exist in defaultcodegen?
if (cm.additionalPropertiesType != null && modelProperty.items != null && modelProperty.items.complexType != null) {
cm.imports.add(modelProperty.items.complexType);
}
// fix the imports that each model has, change them to absolute
fixModelImports(cm.imports);
for (Object objModel: objs.values()) {
HashMap<String, Object> hmModel = (HashMap<String, Object>) objModel;
List<Map<String, Object>> models = (List<Map<String, Object>>) hmModel.get("models");
for (Map<String, Object> model : models) {
CodegenModel cm = (CodegenModel) model.get("model");
// remove model if it is a primitive with no validations
if (cm.isEnum || cm.isAlias) {
Schema modelSchema = ModelUtils.getSchema(this.openAPI, cm.name);
CodegenProperty modelProperty = fromProperty("_value", modelSchema);
if (!modelProperty.isEnum && !modelProperty.hasValidation && !cm.isArrayModel) {
// remove these models because they are aliases and do not have any enums or validations
modelSchemasToRemove.put(cm.name, modelSchema);
continue;
}
}
// fix model imports
if (cm.imports.size() == 0) {
continue;
}
String[] modelNames = cm.imports.toArray(new String[0]);
cm.imports.clear();
for (String modelName : modelNames) {
cm.imports.add(toModelImport(modelName));
String globalImportFixer = "globals()['" + modelName + "'] = " + modelName;
cm.imports.add(globalImportFixer);
}
}
}
@ -550,9 +488,7 @@ public class PythonClientExperimentalCodegen extends PythonClientCodegen {
if (modelProp.isPrimitiveType && (modelProp.hasValidation || modelProp.isEnum)) {
String simpleDataType = result.dataType;
result.dataType = toModelName(modelName);
result.baseType = getPythonClassName(result.dataType);
imports.remove(modelName);
imports.add(result.dataType);
result.baseType = result.dataType;
// set the example value
if (modelProp.isEnum) {
String value = modelProp._enum.get(0).toString();
@ -560,9 +496,6 @@ public class PythonClientExperimentalCodegen extends PythonClientCodegen {
} else {
result.example = result.dataType + "(" + result.example + ")";
}
} else if (!result.isPrimitiveType) {
// fix the baseType for the api docs so the .md link to the class's documentation file is correct
result.baseType = getPythonClassName(result.baseType);
}
return result;
}
@ -591,7 +524,7 @@ public class PythonClientExperimentalCodegen extends PythonClientCodegen {
if (responseSchema != null) {
CodegenProperty cp = fromProperty("response", responseSchema);
if (cp.complexType != null) {
String modelName = getPythonClassName(cp.complexType);
String modelName = cp.complexType;
Schema modelSchema = ModelUtils.getSchema(this.openAPI, modelName);
if (modelSchema != null && !"object".equals(modelSchema.getType())) {
CodegenProperty modelProp = fromProperty("response", modelSchema);
@ -604,19 +537,16 @@ public class PythonClientExperimentalCodegen extends PythonClientCodegen {
if (cp.isEnum == true || cp.hasValidation == true) {
// this model has validations and/or enums so we will generate it
Schema sc = ModelUtils.getSchemaFromResponse(response);
newBaseType = ModelUtils.getSimpleRef(sc.get$ref());
newBaseType = toModelName(ModelUtils.getSimpleRef(sc.get$ref()));
}
}
}
CodegenResponse result = super.fromResponse(responseCode, response);
if (newBaseType != null) {
result.dataType = toModelName(newBaseType);
result.dataType = newBaseType;
// baseType is used to set the link to the model .md documentation
result.baseType = getPythonClassName(newBaseType);
} else if (!result.primitiveType) {
// fix the baseType for the api docs so the .md link to the class's documentation file is correct
result.baseType = getPythonClassName(result.baseType);
result.baseType = newBaseType;
}
return result;
@ -734,28 +664,18 @@ public class PythonClientExperimentalCodegen extends PythonClientCodegen {
public void postProcessModelProperty(CodegenModel model, CodegenProperty p) {
postProcessPattern(p.pattern, p.vendorExtensions);
// set property.complexType so the model docs will link to the ClassName.md
if (p.complexType != null && !languageSpecificPrimitives.contains(p.complexType)) {
p.complexType = getPythonClassName(p.complexType);
} else if (p.isListContainer && p.mostInnerItems.complexType != null && !languageSpecificPrimitives.contains(p.mostInnerItems.complexType)) {
if (p.complexType == null && p.isListContainer && p.mostInnerItems.complexType != null && !languageSpecificPrimitives.contains(p.mostInnerItems.complexType)) {
// fix ListContainers
p.complexType = getPythonClassName(p.mostInnerItems.complexType);
}
// if a model has a property that is of type self, remove the module name from the dataType
if (p.complexType != null && p.dataType.contains(model.classname)) {
String classNameNoModule = getPythonClassName(model.classname);
p.dataType = p.dataType.replace(model.classname, classNameNoModule);
p.complexType = p.mostInnerItems.complexType;
}
}
@Override
public void postProcessParameter(CodegenParameter p) {
postProcessPattern(p.pattern, p.vendorExtensions);
// set baseType to null so the api docs will not point to a model for languageSpecificPrimitives
if (p.baseType != null && languageSpecificPrimitives.contains(p.baseType)){
// set baseType to null so the api docs will not point to a model for languageSpecificPrimitives
p.baseType = null;
} else if (p.isListContainer && p.mostInnerItems.complexType != null && !languageSpecificPrimitives.contains(p.mostInnerItems.complexType)) {
// fix ListContainers
p.baseType = getPythonClassName(p.mostInnerItems.complexType);
}
}
@ -810,6 +730,18 @@ public class PythonClientExperimentalCodegen extends PythonClientCodegen {
}
}
/**
* Sets the value of the 'model.parent' property in CodegenModel
* We have a custom version of this function so we can add the dataType on the ArrayModel
*/
@Override
protected void addParentContainer(CodegenModel model, String name, Schema schema) {
super.addParentContainer(model, name, schema);
List<String> referencedModelNames = new ArrayList<String>();
model.dataType = getTypeString(schema, "", "", referencedModelNames);
}
/**
* Convert OAS Model object to Codegen Model object
*
@ -906,22 +838,11 @@ public class PythonClientExperimentalCodegen extends PythonClientCodegen {
}
}
// use this to store the model name like Cat
// we can't use result.name because that is used to lookup models in the spec
// we can't use result.classname because that stores cat.Cat
// we can't use result.classVarName because that stores the variable for making example instances
result.unescapedDescription = simpleModelName(name);
// this block handles models which have the python base class ModelSimple
// which are responsible for storing validations, enums, and an unnamed value
Schema modelSchema = ModelUtils.getSchema(this.openAPI, result.name);
CodegenProperty modelProperty = fromProperty("_value", modelSchema);
// import complex type from additional properties
if (result.additionalPropertiesType != null && modelProperty.items != null && modelProperty.items.complexType != null) {
result.imports.add(modelProperty.items.complexType);
}
Boolean isPythonModelSimpleModel = (result.isEnum || result.isArrayModel || result.isAlias && modelProperty.hasValidation);
if (isPythonModelSimpleModel) {
// In python, classes which inherit from our ModelSimple class store one value,
@ -941,12 +862,6 @@ public class PythonClientExperimentalCodegen extends PythonClientCodegen {
result.defaultValue = modelProperty.defaultValue;
}
} else {
if (result.isArrayModel && modelProperty.dataType != null && result.dataType == null) {
// needed for array models with complex types
result.dataType = modelProperty.dataType;
result.arrayModelType = getPythonClassName(result.arrayModelType);
}
if (result.defaultValue == null) {
result.hasRequired = true;
}
@ -973,7 +888,7 @@ public class PythonClientExperimentalCodegen extends PythonClientCodegen {
}
cp.isPrimitiveType = false;
String modelName = propertyToModelName.get(cp.name);
cp.complexType = getPythonClassName(modelName);
cp.complexType = modelName;
cp.dataType = modelName;
cp.isEnum = false;
cp.hasValidation = false;
@ -1061,6 +976,18 @@ public class PythonClientExperimentalCodegen extends PythonClientCodegen {
return oasType;
}
public Boolean modelWillBeMade(Schema s) {
// only invoke this on $refed schemas
if (ModelUtils.isComposedSchema(s) || ModelUtils.isArraySchema(s) || ModelUtils.isObjectSchema(s)) {
return true;
}
CodegenProperty cp = fromProperty("_model", s);
if (cp.isEnum || cp.hasValidation) {
return true;
}
return false;
}
/**
* Return a string representation of the Python types for the specified OAS schema.
* Primitive types in the OAS specification are implemented in Python using the corresponding
@ -1091,12 +1018,12 @@ public class PythonClientExperimentalCodegen extends PythonClientCodegen {
// The input schema is a reference. If the resolved schema is
// a composed schema, convert the name to a Python class.
Schema s = ModelUtils.getReferencedSchema(this.openAPI, p);
if (s instanceof ComposedSchema) {
String modelName = ModelUtils.getSimpleRef(p.get$ref());
if (modelWillBeMade(s)) {
String modelName = toModelName(ModelUtils.getSimpleRef(p.get$ref()));
if (referencedModelNames != null) {
referencedModelNames.add(modelName);
}
return prefix + toModelName(modelName) + fullSuffix;
return prefix + modelName + fullSuffix;
}
}
if (isAnyTypeSchema(p)) {
@ -1246,55 +1173,4 @@ public class PythonClientExperimentalCodegen extends PythonClientCodegen {
p.example = example;
}
private String simpleModelName(String name) {
// this returns a model name like Cat
String modelName = sanitizeName(name);
// remove dollar sign
modelName = modelName.replaceAll("$", "");
// model name cannot use reserved keyword, e.g. return
if (isReservedWord(modelName)) {
LOGGER.warn(modelName + " (reserved word) cannot be used as model name. Renamed to " + camelize("model_" + modelName));
modelName = "model_" + modelName; // e.g. return => ModelReturn (after camelize)
}
// model name starts with number
if (modelName.matches("^\\d.*")) {
LOGGER.warn(modelName + " (model name starts with number) cannot be used as model name. Renamed to " + camelize("model_" + modelName));
modelName = "model_" + modelName; // e.g. 200Response => Model200Response (after camelize)
}
if (!StringUtils.isEmpty(modelNamePrefix)) {
modelName = modelNamePrefix + "_" + modelName;
}
if (!StringUtils.isEmpty(modelNameSuffix)) {
modelName = modelName + "_" + modelNameSuffix;
}
// camelize the model name
// phone_number => PhoneNumber
return camelize(modelName);
}
@Override
public String toModelFilename(String name) {
// underscore the model file name
// PhoneNumber => phone_number
return underscore(dropDots(simpleModelName(name)));
}
@Override
public String toModelName(String name) {
// we have a custom version of this function so we can support circular references in python 2 and 3
return toModelFilename(name)+"."+simpleModelName(name);
}
@Override
public String toModelDocFilename(String name) {
// this is used to generate the model's .md documentation file
return simpleModelName(name);
}
}

View File

@ -47,7 +47,7 @@ Class | Method | HTTP request | Description
## Documentation For Models
{{#models}}{{#model}} - [{{{classname}}}]({{modelDocPath}}{{{unescapedDescription}}}.md)
{{#models}}{{#model}} - [{{{classname}}}]({{modelDocPath}}{{{classname}}}.md)
{{/model}}{{/models}}
## Documentation For Authorization

View File

@ -13,6 +13,6 @@
{{#models}}
{{#model}}
from {{modelPackage}}.{{classFilename}} import {{unescapedDescription}}
from {{modelPackage}}.{{classFilename}} import {{classname}}
{{/model}}
{{/models}}

View File

@ -24,6 +24,10 @@ from {{packageName}}.model_utils import ( # noqa: F401
{{#models}}
{{#model}}
{{#imports}}
{{#-first}}
def lazy_import():
{{/-first}}
{{{.}}}
{{/imports}}

View File

@ -64,20 +64,41 @@
{{/optionalVars}}
}
additional_properties_type = {{#additionalPropertiesType}}({{{additionalPropertiesType}}},) # noqa: E501{{/additionalPropertiesType}}{{^additionalPropertiesType}}None{{/additionalPropertiesType}}
{{#additionalPropertiesType}}
@cached_property
def additional_properties_type():
"""
This must be a method because a model may have properties that are
of type self, this must run after the class is loaded
"""
{{#imports}}
{{#-first}}
lazy_import()
{{/-first}}
{{/imports}}
return ({{{additionalPropertiesType}}},) # noqa: E501
{{/additionalPropertiesType}}
{{^additionalPropertiesType}}
additional_properties_type = None
{{/additionalPropertiesType}}
_nullable = {{#isNullable}}True{{/isNullable}}{{^isNullable}}False{{/isNullable}}
@cached_property
def openapi_types():
"""
This must be a class method so a model may have properties that are
of type self, this ensures that we don't create a cyclic import
This must be a method because a model may have properties that are
of type self, this must run after the class is loaded
Returns
openapi_types (dict): The key is attribute name
and the value is attribute type.
"""
{{#imports}}
{{#-first}}
lazy_import()
{{/-first}}
{{/imports}}
return {
{{#isAlias}}
'value': ({{{dataType}}},),
@ -98,7 +119,20 @@
@cached_property
def discriminator():
{{^discriminator}}return None{{/discriminator}}{{#discriminator}}val = {
{{^discriminator}}
return None
{{/discriminator}}
{{#discriminator}}
{{#mappedModels}}
{{#-first}}
{{#imports}}
{{#-first}}
lazy_import()
{{/-first}}
{{/imports}}
{{/-first}}
{{/mappedModels}}
val = {
{{#mappedModels}}
'{{mappingName}}': {{{modelName}}},
{{/mappedModels}}

View File

@ -1,4 +1,4 @@
class {{unescapedDescription}}(ModelComposed):
class {{classname}}(ModelComposed):
"""NOTE: This class is auto generated by OpenAPI Generator.
Ref: https://openapi-generator.tech
@ -35,6 +35,11 @@ class {{unescapedDescription}}(ModelComposed):
# code would be run when this module is imported, and these composed
# classes don't exist yet because their module has not finished
# loading
{{#imports}}
{{#-first}}
lazy_import()
{{/-first}}
{{/imports}}
return {
'anyOf': [
{{#anyOf}}

View File

@ -1,4 +1,4 @@
class {{unescapedDescription}}(ModelNormal):
class {{classname}}(ModelNormal):
"""NOTE: This class is auto generated by OpenAPI Generator.
Ref: https://openapi-generator.tech

View File

@ -1,4 +1,4 @@
class {{unescapedDescription}}(ModelSimple):
class {{classname}}(ModelSimple):
"""NOTE: This class is auto generated by OpenAPI Generator.
Ref: https://openapi-generator.tech

View File

@ -33,9 +33,9 @@ class cached_property(object):
self._fn = fn
def __get__(self, instance, cls=None):
try:
if self.result_key in vars(self):
return vars(self)[self.result_key]
except KeyError:
else:
result = self._fn()
setattr(self, self.result_key, result)
return result

View File

@ -40,19 +40,19 @@ public class PythonClientExperimentalTest {
codegen.setOpenAPI(openAPI);
final CodegenModel simpleName = codegen.fromModel("v1beta3.Binding", openAPI.getComponents().getSchemas().get("v1beta3.Binding"));
Assert.assertEquals(simpleName.name, "v1beta3.Binding");
Assert.assertEquals(simpleName.classname, "v1beta3_binding.V1beta3Binding");
Assert.assertEquals(simpleName.classname, "V1beta3Binding");
Assert.assertEquals(simpleName.classVarName, "v1beta3_binding");
codegen.setOpenAPI(openAPI);
final CodegenModel compoundName = codegen.fromModel("v1beta3.ComponentStatus", openAPI.getComponents().getSchemas().get("v1beta3.ComponentStatus"));
Assert.assertEquals(compoundName.name, "v1beta3.ComponentStatus");
Assert.assertEquals(compoundName.classname, "v1beta3_component_status.V1beta3ComponentStatus");
Assert.assertEquals(compoundName.classname, "V1beta3ComponentStatus");
Assert.assertEquals(compoundName.classVarName, "v1beta3_component_status");
final String path = "/api/v1beta3/namespaces/{namespaces}/bindings";
final Operation operation = openAPI.getPaths().get(path).getPost();
final CodegenOperation codegenOperation = codegen.fromOperation(path, "get", operation, null);
Assert.assertEquals(codegenOperation.returnType, "v1beta3_binding.V1beta3Binding");
Assert.assertEquals(codegenOperation.returnType, "V1beta3Binding");
Assert.assertEquals(codegenOperation.returnBaseType, "V1beta3Binding");
}
@ -71,7 +71,7 @@ public class PythonClientExperimentalTest {
final CodegenModel cm = codegen.fromModel("sample", schema);
Assert.assertEquals(cm.name, "sample");
Assert.assertEquals(cm.classname, "sample.Sample");
Assert.assertEquals(cm.classname, "Sample");
Assert.assertEquals(cm.description, "a sample model");
Assert.assertEquals(cm.vars.size(), 3);
@ -119,7 +119,7 @@ public class PythonClientExperimentalTest {
final CodegenModel cm = codegen.fromModel("sample", model);
Assert.assertEquals(cm.name, "sample");
Assert.assertEquals(cm.classname, "sample.Sample");
Assert.assertEquals(cm.classname, "Sample");
Assert.assertEquals(cm.description, "a sample model");
Assert.assertEquals(cm.vars.size(), 2);
@ -159,7 +159,7 @@ public class PythonClientExperimentalTest {
final CodegenModel cm = codegen.fromModel("sample", model);
Assert.assertEquals(cm.name, "sample");
Assert.assertEquals(cm.classname, "sample.Sample");
Assert.assertEquals(cm.classname, "Sample");
Assert.assertEquals(cm.description, "a sample model");
Assert.assertEquals(cm.vars.size(), 1);
@ -176,48 +176,60 @@ public class PythonClientExperimentalTest {
@Test(description = "convert a model with complex property")
public void complexPropertyTest() {
final DefaultCodegen codegen = new PythonClientExperimentalCodegen();
OpenAPI openAPI = TestUtils.createOpenAPI();
final Schema model = new Schema()
.description("a sample model")
.addProperties("children", new Schema().$ref("#/definitions/Children"));
final DefaultCodegen codegen = new PythonClientExperimentalCodegen();
OpenAPI openAPI = TestUtils.createOpenAPIWithOneSchema("sample", model);
.addProperties("children", new Schema().$ref("#/components/schemas/Children"));
final Schema children = new Schema()
.type("object")
.addProperties("number", new Schema().type("integer"));
openAPI.getComponents().addSchemas("sample", model);
openAPI.getComponents().addSchemas("Children", children);
codegen.setOpenAPI(openAPI);
final CodegenModel cm = codegen.fromModel("sample", model);
Assert.assertEquals(cm.name, "sample");
Assert.assertEquals(cm.classname, "sample.Sample");
Assert.assertEquals(cm.classname, "Sample");
Assert.assertEquals(cm.description, "a sample model");
Assert.assertEquals(cm.vars.size(), 1);
final CodegenProperty property1 = cm.vars.get(0);
Assert.assertEquals(property1.baseName, "children");
Assert.assertEquals(property1.dataType, "children.Children");
Assert.assertEquals(property1.dataType, "Children");
Assert.assertEquals(property1.name, "children");
Assert.assertEquals(property1.baseType, "children.Children");
Assert.assertEquals(property1.baseType, "Children");
Assert.assertFalse(property1.required);
Assert.assertFalse(property1.isContainer);
}
@Test(description = "convert a model with complex list property")
public void complexListPropertyTest() {
final DefaultCodegen codegen = new PythonClientExperimentalCodegen();
OpenAPI openAPI = TestUtils.createOpenAPI();
final Schema model = new Schema()
.description("a sample model")
.addProperties("children", new ArraySchema()
.items(new Schema().$ref("#/definitions/Children")));
final DefaultCodegen codegen = new PythonClientExperimentalCodegen();
OpenAPI openAPI = TestUtils.createOpenAPIWithOneSchema("sample", model);
.items(new Schema().$ref("#/components/schemas/Children")));
final Schema children = new Schema()
.type("object")
.addProperties("number", new Schema().type("integer"));
openAPI.getComponents().addSchemas("sample", model);
openAPI.getComponents().addSchemas("Children", children);
codegen.setOpenAPI(openAPI);
final CodegenModel cm = codegen.fromModel("sample", model);
Assert.assertEquals(cm.name, "sample");
Assert.assertEquals(cm.classname, "sample.Sample");
Assert.assertEquals(cm.classname, "Sample");
Assert.assertEquals(cm.description, "a sample model");
Assert.assertEquals(cm.vars.size(), 1);
final CodegenProperty property1 = cm.vars.get(0);
Assert.assertEquals(property1.baseName, "children");
Assert.assertEquals(property1.complexType, "Children");
Assert.assertEquals(property1.dataType, "[children.Children]");
Assert.assertEquals(property1.dataType, "[Children]");
Assert.assertEquals(property1.name, "children");
Assert.assertEquals(property1.baseType, "list");
Assert.assertEquals(property1.containerType, "array");
@ -227,25 +239,31 @@ public class PythonClientExperimentalTest {
@Test(description = "convert a model with complex map property")
public void complexMapPropertyTest() {
final DefaultCodegen codegen = new PythonClientExperimentalCodegen();
OpenAPI openAPI = TestUtils.createOpenAPI();
final Schema model = new Schema()
.description("a sample model")
.addProperties("children", new MapSchema()
.additionalProperties(new Schema().$ref("#/definitions/Children")));
final DefaultCodegen codegen = new PythonClientExperimentalCodegen();
OpenAPI openAPI = TestUtils.createOpenAPIWithOneSchema("sample", model);
.additionalProperties(new Schema().$ref("#/components/schemas/Children")));
final Schema children = new Schema()
.type("object")
.addProperties("number", new Schema().type("integer"));
openAPI.getComponents().addSchemas("sample", model);
openAPI.getComponents().addSchemas("Children", children);
codegen.setOpenAPI(openAPI);
final CodegenModel cm = codegen.fromModel("sample", model);
Assert.assertEquals(cm.name, "sample");
Assert.assertEquals(cm.classname, "sample.Sample");
Assert.assertEquals(cm.classname, "Sample");
Assert.assertEquals(cm.description, "a sample model");
Assert.assertEquals(cm.vars.size(), 1);
Assert.assertEquals(Sets.intersection(cm.imports, Sets.newHashSet("children.Children")).size(), 1);
Assert.assertEquals(Sets.intersection(cm.imports, Sets.newHashSet("Children")).size(), 1);
final CodegenProperty property1 = cm.vars.get(0);
Assert.assertEquals(property1.baseName, "children");
Assert.assertEquals(property1.complexType, "Children");
Assert.assertEquals(property1.dataType, "{str: (children.Children,)}");
Assert.assertEquals(property1.dataType, "{str: (Children,)}");
Assert.assertEquals(property1.name, "children");
Assert.assertEquals(property1.baseType, "dict");
Assert.assertEquals(property1.containerType, "map");
@ -257,38 +275,48 @@ public class PythonClientExperimentalTest {
// should not start with 'null'. need help from the community to investigate further
@Test(description = "convert an array model")
public void arrayModelTest() {
final Schema model = new ArraySchema()
//.description()
.items(new Schema().$ref("#/definitions/Children"))
.description("an array model");
final DefaultCodegen codegen = new PythonClientExperimentalCodegen();
OpenAPI openAPI = TestUtils.createOpenAPIWithOneSchema("sample", model);
OpenAPI openAPI = TestUtils.createOpenAPI();
final Schema model = new ArraySchema()
.items(new Schema().$ref("#/components/schemas/Children"))
.description("an array model");
final Schema children = new Schema()
.type("object")
.addProperties("number", new Schema().type("integer"));
openAPI.getComponents().addSchemas("sample", model);
openAPI.getComponents().addSchemas("Children", children);
codegen.setOpenAPI(openAPI);
final CodegenModel cm = codegen.fromModel("sample", model);
Assert.assertEquals(cm.name, "sample");
Assert.assertEquals(cm.classname, "sample.Sample");
Assert.assertEquals(cm.classname, "Sample");
Assert.assertEquals(cm.classVarName, "sample");
Assert.assertEquals(cm.description, "an array model");
Assert.assertEquals(cm.vars.size(), 0); // the array model has no vars
Assert.assertEquals(cm.parent, "list");
Assert.assertEquals(cm.imports.size(), 1);
Assert.assertEquals(Sets.intersection(cm.imports, Sets.newHashSet("children.Children")).size(), 1);
Assert.assertEquals(Sets.intersection(cm.imports, Sets.newHashSet("Children")).size(), 1);
}
// should not start with 'null'. need help from the community to investigate further
@Test(description = "convert a map model")
public void mapModelTest() {
final Schema model = new Schema()
.description("a map model")
.additionalProperties(new Schema().$ref("#/definitions/Children"));
final DefaultCodegen codegen = new PythonClientExperimentalCodegen();
OpenAPI openAPI = TestUtils.createOpenAPIWithOneSchema("sample", model);
OpenAPI openAPI = TestUtils.createOpenAPI();
final Schema sample = new Schema()
.description("a map model")
.additionalProperties(new Schema().$ref("#/components/schemas/Children"));
final Schema children = new Schema()
.type("object")
.addProperties("number", new Schema().type("integer"));
openAPI.getComponents().addSchemas("sample", sample);
openAPI.getComponents().addSchemas("Children", children);
codegen.setOpenAPI(openAPI);
final CodegenModel cm = codegen.fromModel("sample", model);
final CodegenModel cm = codegen.fromModel("sample", sample);
Assert.assertEquals(cm.name, "sample");
Assert.assertEquals(cm.classname, "sample.Sample");
Assert.assertEquals(cm.classname, "Sample");
Assert.assertEquals(cm.description, "a map model");
Assert.assertEquals(cm.vars.size(), 0);
Assert.assertEquals(cm.parent, null);

View File

@ -50,7 +50,7 @@ import time
import petstore_api
from pprint import pprint
from petstore_api.api import another_fake_api
from petstore_api.model import client
from petstore_api.model.client import Client
# Defining the host is optional and defaults to http://petstore.swagger.io:80/v2
# See configuration.py for a list of all supported configuration parameters.
configuration = petstore_api.Configuration(
@ -63,7 +63,7 @@ configuration = petstore_api.Configuration(
with petstore_api.ApiClient(configuration) as api_client:
# Create an instance of the API class
api_instance = another_fake_api.AnotherFakeApi(api_client)
body = client.Client() # client.Client | client model
body = Client() # Client | client model
try:
# To test special tags
@ -122,69 +122,69 @@ Class | Method | HTTP request | Description
## Documentation For Models
- [additional_properties_any_type.AdditionalPropertiesAnyType](docs/AdditionalPropertiesAnyType.md)
- [additional_properties_array.AdditionalPropertiesArray](docs/AdditionalPropertiesArray.md)
- [additional_properties_boolean.AdditionalPropertiesBoolean](docs/AdditionalPropertiesBoolean.md)
- [additional_properties_class.AdditionalPropertiesClass](docs/AdditionalPropertiesClass.md)
- [additional_properties_integer.AdditionalPropertiesInteger](docs/AdditionalPropertiesInteger.md)
- [additional_properties_number.AdditionalPropertiesNumber](docs/AdditionalPropertiesNumber.md)
- [additional_properties_object.AdditionalPropertiesObject](docs/AdditionalPropertiesObject.md)
- [additional_properties_string.AdditionalPropertiesString](docs/AdditionalPropertiesString.md)
- [animal.Animal](docs/Animal.md)
- [animal_farm.AnimalFarm](docs/AnimalFarm.md)
- [api_response.ApiResponse](docs/ApiResponse.md)
- [array_of_array_of_number_only.ArrayOfArrayOfNumberOnly](docs/ArrayOfArrayOfNumberOnly.md)
- [array_of_number_only.ArrayOfNumberOnly](docs/ArrayOfNumberOnly.md)
- [array_test.ArrayTest](docs/ArrayTest.md)
- [capitalization.Capitalization](docs/Capitalization.md)
- [cat.Cat](docs/Cat.md)
- [cat_all_of.CatAllOf](docs/CatAllOf.md)
- [category.Category](docs/Category.md)
- [child.Child](docs/Child.md)
- [child_all_of.ChildAllOf](docs/ChildAllOf.md)
- [child_cat.ChildCat](docs/ChildCat.md)
- [child_cat_all_of.ChildCatAllOf](docs/ChildCatAllOf.md)
- [child_dog.ChildDog](docs/ChildDog.md)
- [child_dog_all_of.ChildDogAllOf](docs/ChildDogAllOf.md)
- [child_lizard.ChildLizard](docs/ChildLizard.md)
- [child_lizard_all_of.ChildLizardAllOf](docs/ChildLizardAllOf.md)
- [class_model.ClassModel](docs/ClassModel.md)
- [client.Client](docs/Client.md)
- [dog.Dog](docs/Dog.md)
- [dog_all_of.DogAllOf](docs/DogAllOf.md)
- [enum_arrays.EnumArrays](docs/EnumArrays.md)
- [enum_class.EnumClass](docs/EnumClass.md)
- [enum_test.EnumTest](docs/EnumTest.md)
- [file.File](docs/File.md)
- [file_schema_test_class.FileSchemaTestClass](docs/FileSchemaTestClass.md)
- [format_test.FormatTest](docs/FormatTest.md)
- [grandparent.Grandparent](docs/Grandparent.md)
- [grandparent_animal.GrandparentAnimal](docs/GrandparentAnimal.md)
- [has_only_read_only.HasOnlyReadOnly](docs/HasOnlyReadOnly.md)
- [list.List](docs/List.md)
- [map_test.MapTest](docs/MapTest.md)
- [mixed_properties_and_additional_properties_class.MixedPropertiesAndAdditionalPropertiesClass](docs/MixedPropertiesAndAdditionalPropertiesClass.md)
- [model200_response.Model200Response](docs/Model200Response.md)
- [model_return.ModelReturn](docs/ModelReturn.md)
- [name.Name](docs/Name.md)
- [number_only.NumberOnly](docs/NumberOnly.md)
- [number_with_validations.NumberWithValidations](docs/NumberWithValidations.md)
- [object_model_with_ref_props.ObjectModelWithRefProps](docs/ObjectModelWithRefProps.md)
- [order.Order](docs/Order.md)
- [parent.Parent](docs/Parent.md)
- [parent_all_of.ParentAllOf](docs/ParentAllOf.md)
- [parent_pet.ParentPet](docs/ParentPet.md)
- [pet.Pet](docs/Pet.md)
- [player.Player](docs/Player.md)
- [read_only_first.ReadOnlyFirst](docs/ReadOnlyFirst.md)
- [special_model_name.SpecialModelName](docs/SpecialModelName.md)
- [string_boolean_map.StringBooleanMap](docs/StringBooleanMap.md)
- [string_enum.StringEnum](docs/StringEnum.md)
- [tag.Tag](docs/Tag.md)
- [type_holder_default.TypeHolderDefault](docs/TypeHolderDefault.md)
- [type_holder_example.TypeHolderExample](docs/TypeHolderExample.md)
- [user.User](docs/User.md)
- [xml_item.XmlItem](docs/XmlItem.md)
- [AdditionalPropertiesAnyType](docs/AdditionalPropertiesAnyType.md)
- [AdditionalPropertiesArray](docs/AdditionalPropertiesArray.md)
- [AdditionalPropertiesBoolean](docs/AdditionalPropertiesBoolean.md)
- [AdditionalPropertiesClass](docs/AdditionalPropertiesClass.md)
- [AdditionalPropertiesInteger](docs/AdditionalPropertiesInteger.md)
- [AdditionalPropertiesNumber](docs/AdditionalPropertiesNumber.md)
- [AdditionalPropertiesObject](docs/AdditionalPropertiesObject.md)
- [AdditionalPropertiesString](docs/AdditionalPropertiesString.md)
- [Animal](docs/Animal.md)
- [AnimalFarm](docs/AnimalFarm.md)
- [ApiResponse](docs/ApiResponse.md)
- [ArrayOfArrayOfNumberOnly](docs/ArrayOfArrayOfNumberOnly.md)
- [ArrayOfNumberOnly](docs/ArrayOfNumberOnly.md)
- [ArrayTest](docs/ArrayTest.md)
- [Capitalization](docs/Capitalization.md)
- [Cat](docs/Cat.md)
- [CatAllOf](docs/CatAllOf.md)
- [Category](docs/Category.md)
- [Child](docs/Child.md)
- [ChildAllOf](docs/ChildAllOf.md)
- [ChildCat](docs/ChildCat.md)
- [ChildCatAllOf](docs/ChildCatAllOf.md)
- [ChildDog](docs/ChildDog.md)
- [ChildDogAllOf](docs/ChildDogAllOf.md)
- [ChildLizard](docs/ChildLizard.md)
- [ChildLizardAllOf](docs/ChildLizardAllOf.md)
- [ClassModel](docs/ClassModel.md)
- [Client](docs/Client.md)
- [Dog](docs/Dog.md)
- [DogAllOf](docs/DogAllOf.md)
- [EnumArrays](docs/EnumArrays.md)
- [EnumClass](docs/EnumClass.md)
- [EnumTest](docs/EnumTest.md)
- [File](docs/File.md)
- [FileSchemaTestClass](docs/FileSchemaTestClass.md)
- [FormatTest](docs/FormatTest.md)
- [Grandparent](docs/Grandparent.md)
- [GrandparentAnimal](docs/GrandparentAnimal.md)
- [HasOnlyReadOnly](docs/HasOnlyReadOnly.md)
- [List](docs/List.md)
- [MapTest](docs/MapTest.md)
- [MixedPropertiesAndAdditionalPropertiesClass](docs/MixedPropertiesAndAdditionalPropertiesClass.md)
- [Model200Response](docs/Model200Response.md)
- [ModelReturn](docs/ModelReturn.md)
- [Name](docs/Name.md)
- [NumberOnly](docs/NumberOnly.md)
- [NumberWithValidations](docs/NumberWithValidations.md)
- [ObjectModelWithRefProps](docs/ObjectModelWithRefProps.md)
- [Order](docs/Order.md)
- [Parent](docs/Parent.md)
- [ParentAllOf](docs/ParentAllOf.md)
- [ParentPet](docs/ParentPet.md)
- [Pet](docs/Pet.md)
- [Player](docs/Player.md)
- [ReadOnlyFirst](docs/ReadOnlyFirst.md)
- [SpecialModelName](docs/SpecialModelName.md)
- [StringBooleanMap](docs/StringBooleanMap.md)
- [StringEnum](docs/StringEnum.md)
- [Tag](docs/Tag.md)
- [TypeHolderDefault](docs/TypeHolderDefault.md)
- [TypeHolderExample](docs/TypeHolderExample.md)
- [User](docs/User.md)
- [XmlItem](docs/XmlItem.md)
## Documentation For Authorization

View File

@ -1,4 +1,4 @@
# additional_properties_any_type.AdditionalPropertiesAnyType
# AdditionalPropertiesAnyType
## Properties
Name | Type | Description | Notes

View File

@ -1,4 +1,4 @@
# additional_properties_array.AdditionalPropertiesArray
# AdditionalPropertiesArray
## Properties
Name | Type | Description | Notes

View File

@ -1,4 +1,4 @@
# additional_properties_boolean.AdditionalPropertiesBoolean
# AdditionalPropertiesBoolean
## Properties
Name | Type | Description | Notes

View File

@ -1,4 +1,4 @@
# additional_properties_class.AdditionalPropertiesClass
# AdditionalPropertiesClass
## Properties
Name | Type | Description | Notes

View File

@ -1,4 +1,4 @@
# additional_properties_integer.AdditionalPropertiesInteger
# AdditionalPropertiesInteger
## Properties
Name | Type | Description | Notes

View File

@ -1,4 +1,4 @@
# additional_properties_number.AdditionalPropertiesNumber
# AdditionalPropertiesNumber
## Properties
Name | Type | Description | Notes

View File

@ -1,4 +1,4 @@
# additional_properties_object.AdditionalPropertiesObject
# AdditionalPropertiesObject
## Properties
Name | Type | Description | Notes

View File

@ -1,4 +1,4 @@
# additional_properties_string.AdditionalPropertiesString
# AdditionalPropertiesString
## Properties
Name | Type | Description | Notes

View File

@ -1,4 +1,4 @@
# animal.Animal
# Animal
## Properties
Name | Type | Description | Notes

View File

@ -1,9 +1,9 @@
# animal_farm.AnimalFarm
# AnimalFarm
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**value** | [**[animal.Animal]**](Animal.md) | |
**value** | [**[Animal]**](Animal.md) | |
[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)

View File

@ -8,7 +8,7 @@ Method | HTTP request | Description
# **call_123_test_special_tags**
> client.Client call_123_test_special_tags(body)
> Client call_123_test_special_tags(body)
To test special tags
@ -20,7 +20,7 @@ To test special tags and operation ID starting with number
import time
import petstore_api
from petstore_api.api import another_fake_api
from petstore_api.model import client
from petstore_api.model.client import Client
from pprint import pprint
# Defining the host is optional and defaults to http://petstore.swagger.io:80/v2
# See configuration.py for a list of all supported configuration parameters.
@ -33,7 +33,7 @@ configuration = petstore_api.Configuration(
with petstore_api.ApiClient() as api_client:
# Create an instance of the API class
api_instance = another_fake_api.AnotherFakeApi(api_client)
body = client.Client() # client.Client | client model
body = Client() # Client | client model
# example passing only required values which don't have defaults set
try:
@ -48,11 +48,11 @@ with petstore_api.ApiClient() as api_client:
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**body** | [**client.Client**](Client.md)| client model |
**body** | [**Client**](Client.md)| client model |
### Return type
[**client.Client**](Client.md)
[**Client**](Client.md)
### Authorization

View File

@ -1,4 +1,4 @@
# api_response.ApiResponse
# ApiResponse
## Properties
Name | Type | Description | Notes

View File

@ -1,4 +1,4 @@
# array_of_array_of_number_only.ArrayOfArrayOfNumberOnly
# ArrayOfArrayOfNumberOnly
## Properties
Name | Type | Description | Notes

View File

@ -1,4 +1,4 @@
# array_of_number_only.ArrayOfNumberOnly
# ArrayOfNumberOnly
## Properties
Name | Type | Description | Notes

View File

@ -1,11 +1,11 @@
# array_test.ArrayTest
# ArrayTest
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**array_of_string** | **[str]** | | [optional]
**array_array_of_integer** | **[[int]]** | | [optional]
**array_array_of_model** | [**[[read_only_first.ReadOnlyFirst]]**](ReadOnlyFirst.md) | | [optional]
**array_array_of_model** | [**[[ReadOnlyFirst]]**](ReadOnlyFirst.md) | | [optional]
[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)

View File

@ -1,4 +1,4 @@
# capitalization.Capitalization
# Capitalization
## Properties
Name | Type | Description | Notes

View File

@ -1,4 +1,4 @@
# cat.Cat
# Cat
## Properties
Name | Type | Description | Notes

View File

@ -1,4 +1,4 @@
# cat_all_of.CatAllOf
# CatAllOf
## Properties
Name | Type | Description | Notes

View File

@ -1,4 +1,4 @@
# category.Category
# Category
## Properties
Name | Type | Description | Notes

View File

@ -1,4 +1,4 @@
# child.Child
# Child
## Properties
Name | Type | Description | Notes

View File

@ -1,4 +1,4 @@
# child_all_of.ChildAllOf
# ChildAllOf
## Properties
Name | Type | Description | Notes

View File

@ -1,4 +1,4 @@
# child_cat.ChildCat
# ChildCat
## Properties
Name | Type | Description | Notes

View File

@ -1,4 +1,4 @@
# child_cat_all_of.ChildCatAllOf
# ChildCatAllOf
## Properties
Name | Type | Description | Notes

View File

@ -1,4 +1,4 @@
# child_dog.ChildDog
# ChildDog
## Properties
Name | Type | Description | Notes

View File

@ -1,4 +1,4 @@
# child_dog_all_of.ChildDogAllOf
# ChildDogAllOf
## Properties
Name | Type | Description | Notes

View File

@ -1,4 +1,4 @@
# child_lizard.ChildLizard
# ChildLizard
## Properties
Name | Type | Description | Notes

View File

@ -1,4 +1,4 @@
# child_lizard_all_of.ChildLizardAllOf
# ChildLizardAllOf
## Properties
Name | Type | Description | Notes

View File

@ -1,4 +1,4 @@
# class_model.ClassModel
# ClassModel
Model for testing model with \"_class\" property
## Properties

View File

@ -1,4 +1,4 @@
# client.Client
# Client
## Properties
Name | Type | Description | Notes

View File

@ -1,4 +1,4 @@
# dog.Dog
# Dog
## Properties
Name | Type | Description | Notes

View File

@ -1,4 +1,4 @@
# dog_all_of.DogAllOf
# DogAllOf
## Properties
Name | Type | Description | Notes

View File

@ -1,4 +1,4 @@
# enum_arrays.EnumArrays
# EnumArrays
## Properties
Name | Type | Description | Notes

View File

@ -1,4 +1,4 @@
# enum_class.EnumClass
# EnumClass
## Properties
Name | Type | Description | Notes

View File

@ -1,4 +1,4 @@
# enum_test.EnumTest
# EnumTest
## Properties
Name | Type | Description | Notes
@ -7,7 +7,7 @@ Name | Type | Description | Notes
**enum_string** | **str** | | [optional]
**enum_integer** | **int** | | [optional]
**enum_number** | **float** | | [optional]
**string_enum** | [**string_enum.StringEnum**](StringEnum.md) | | [optional]
**string_enum** | [**StringEnum**](StringEnum.md) | | [optional]
[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)

View File

@ -23,7 +23,7 @@ Method | HTTP request | Description
# **array_model**
> animal_farm.AnimalFarm array_model()
> AnimalFarm array_model()
@ -35,7 +35,7 @@ Test serialization of ArrayModel
import time
import petstore_api
from petstore_api.api import fake_api
from petstore_api.model import animal_farm
from petstore_api.model.animal_farm import AnimalFarm
from pprint import pprint
# Defining the host is optional and defaults to http://petstore.swagger.io:80/v2
# See configuration.py for a list of all supported configuration parameters.
@ -48,7 +48,7 @@ configuration = petstore_api.Configuration(
with petstore_api.ApiClient() as api_client:
# Create an instance of the API class
api_instance = fake_api.FakeApi(api_client)
body = animal_farm.AnimalFarm() # animal_farm.AnimalFarm | Input model (optional)
body = AnimalFarm() # AnimalFarm | Input model (optional)
# example passing only required values which don't have defaults set
# and optional values
@ -63,11 +63,11 @@ with petstore_api.ApiClient() as api_client:
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**body** | [**animal_farm.AnimalFarm**](AnimalFarm.md)| Input model | [optional]
**body** | [**AnimalFarm**](AnimalFarm.md)| Input model | [optional]
### Return type
[**animal_farm.AnimalFarm**](AnimalFarm.md)
[**AnimalFarm**](AnimalFarm.md)
### Authorization
@ -160,7 +160,7 @@ this route creates an XmlItem
import time
import petstore_api
from petstore_api.api import fake_api
from petstore_api.model import xml_item
from petstore_api.model.xml_item import XmlItem
from pprint import pprint
# Defining the host is optional and defaults to http://petstore.swagger.io:80/v2
# See configuration.py for a list of all supported configuration parameters.
@ -173,7 +173,7 @@ configuration = petstore_api.Configuration(
with petstore_api.ApiClient() as api_client:
# Create an instance of the API class
api_instance = fake_api.FakeApi(api_client)
xml_item = xml_item.XmlItem() # xml_item.XmlItem | XmlItem Body
xml_item = XmlItem() # XmlItem | XmlItem Body
# example passing only required values which don't have defaults set
try:
@ -187,7 +187,7 @@ with petstore_api.ApiClient() as api_client:
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**xml_item** | [**xml_item.XmlItem**](XmlItem.md)| XmlItem Body |
**xml_item** | [**XmlItem**](XmlItem.md)| XmlItem Body |
### Return type
@ -210,7 +210,7 @@ No authorization required
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
# **number_with_validations**
> number_with_validations.NumberWithValidations number_with_validations()
> NumberWithValidations number_with_validations()
@ -222,7 +222,7 @@ Test serialization of outer number types
import time
import petstore_api
from petstore_api.api import fake_api
from petstore_api.model import number_with_validations
from petstore_api.model.number_with_validations import NumberWithValidations
from pprint import pprint
# Defining the host is optional and defaults to http://petstore.swagger.io:80/v2
# See configuration.py for a list of all supported configuration parameters.
@ -235,7 +235,7 @@ configuration = petstore_api.Configuration(
with petstore_api.ApiClient() as api_client:
# Create an instance of the API class
api_instance = fake_api.FakeApi(api_client)
body = number_with_validations.NumberWithValidations(3.4) # number_with_validations.NumberWithValidations | Input number as post body (optional)
body = NumberWithValidations(3.4) # NumberWithValidations | Input number as post body (optional)
# example passing only required values which don't have defaults set
# and optional values
@ -250,11 +250,11 @@ with petstore_api.ApiClient() as api_client:
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**body** | [**number_with_validations.NumberWithValidations**](NumberWithValidations.md)| Input number as post body | [optional]
**body** | [**NumberWithValidations**](NumberWithValidations.md)| Input number as post body | [optional]
### Return type
[**number_with_validations.NumberWithValidations**](NumberWithValidations.md)
[**NumberWithValidations**](NumberWithValidations.md)
### Authorization
@ -273,7 +273,7 @@ No authorization required
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
# **object_model_with_ref_props**
> object_model_with_ref_props.ObjectModelWithRefProps object_model_with_ref_props()
> ObjectModelWithRefProps object_model_with_ref_props()
@ -285,7 +285,7 @@ Test serialization of object with $refed properties
import time
import petstore_api
from petstore_api.api import fake_api
from petstore_api.model import object_model_with_ref_props
from petstore_api.model.object_model_with_ref_props import ObjectModelWithRefProps
from pprint import pprint
# Defining the host is optional and defaults to http://petstore.swagger.io:80/v2
# See configuration.py for a list of all supported configuration parameters.
@ -298,7 +298,7 @@ configuration = petstore_api.Configuration(
with petstore_api.ApiClient() as api_client:
# Create an instance of the API class
api_instance = fake_api.FakeApi(api_client)
body = object_model_with_ref_props.ObjectModelWithRefProps() # object_model_with_ref_props.ObjectModelWithRefProps | Input model (optional)
body = ObjectModelWithRefProps() # ObjectModelWithRefProps | Input model (optional)
# example passing only required values which don't have defaults set
# and optional values
@ -313,11 +313,11 @@ with petstore_api.ApiClient() as api_client:
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**body** | [**object_model_with_ref_props.ObjectModelWithRefProps**](ObjectModelWithRefProps.md)| Input model | [optional]
**body** | [**ObjectModelWithRefProps**](ObjectModelWithRefProps.md)| Input model | [optional]
### Return type
[**object_model_with_ref_props.ObjectModelWithRefProps**](ObjectModelWithRefProps.md)
[**ObjectModelWithRefProps**](ObjectModelWithRefProps.md)
### Authorization
@ -398,7 +398,7 @@ No authorization required
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
# **string_enum**
> string_enum.StringEnum string_enum()
> StringEnum string_enum()
@ -410,7 +410,7 @@ Test serialization of outer enum
import time
import petstore_api
from petstore_api.api import fake_api
from petstore_api.model import string_enum
from petstore_api.model.string_enum import StringEnum
from pprint import pprint
# Defining the host is optional and defaults to http://petstore.swagger.io:80/v2
# See configuration.py for a list of all supported configuration parameters.
@ -423,7 +423,7 @@ configuration = petstore_api.Configuration(
with petstore_api.ApiClient() as api_client:
# Create an instance of the API class
api_instance = fake_api.FakeApi(api_client)
body = string_enum.StringEnum("placed") # string_enum.StringEnum | Input enum (optional)
body = StringEnum("placed") # StringEnum | Input enum (optional)
# example passing only required values which don't have defaults set
# and optional values
@ -438,11 +438,11 @@ with petstore_api.ApiClient() as api_client:
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**body** | [**string_enum.StringEnum**](StringEnum.md)| Input enum | [optional]
**body** | [**StringEnum**](StringEnum.md)| Input enum | [optional]
### Return type
[**string_enum.StringEnum**](StringEnum.md)
[**StringEnum**](StringEnum.md)
### Authorization
@ -473,7 +473,7 @@ For this test, the body for this request much reference a schema named `File`.
import time
import petstore_api
from petstore_api.api import fake_api
from petstore_api.model import file_schema_test_class
from petstore_api.model.file_schema_test_class import FileSchemaTestClass
from pprint import pprint
# Defining the host is optional and defaults to http://petstore.swagger.io:80/v2
# See configuration.py for a list of all supported configuration parameters.
@ -486,7 +486,7 @@ configuration = petstore_api.Configuration(
with petstore_api.ApiClient() as api_client:
# Create an instance of the API class
api_instance = fake_api.FakeApi(api_client)
body = file_schema_test_class.FileSchemaTestClass() # file_schema_test_class.FileSchemaTestClass |
body = FileSchemaTestClass() # FileSchemaTestClass |
# example passing only required values which don't have defaults set
try:
@ -499,7 +499,7 @@ with petstore_api.ApiClient() as api_client:
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**body** | [**file_schema_test_class.FileSchemaTestClass**](FileSchemaTestClass.md)| |
**body** | [**FileSchemaTestClass**](FileSchemaTestClass.md)| |
### Return type
@ -532,7 +532,7 @@ No authorization required
import time
import petstore_api
from petstore_api.api import fake_api
from petstore_api.model import user
from petstore_api.model.user import User
from pprint import pprint
# Defining the host is optional and defaults to http://petstore.swagger.io:80/v2
# See configuration.py for a list of all supported configuration parameters.
@ -546,7 +546,7 @@ with petstore_api.ApiClient() as api_client:
# Create an instance of the API class
api_instance = fake_api.FakeApi(api_client)
query = 'query_example' # str |
body = user.User() # user.User |
body = User() # User |
# example passing only required values which don't have defaults set
try:
@ -560,7 +560,7 @@ with petstore_api.ApiClient() as api_client:
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**query** | **str**| |
**body** | [**user.User**](User.md)| |
**body** | [**User**](User.md)| |
### Return type
@ -583,7 +583,7 @@ No authorization required
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
# **test_client_model**
> client.Client test_client_model(body)
> Client test_client_model(body)
To test \"client\" model
@ -595,7 +595,7 @@ To test \"client\" model
import time
import petstore_api
from petstore_api.api import fake_api
from petstore_api.model import client
from petstore_api.model.client import Client
from pprint import pprint
# Defining the host is optional and defaults to http://petstore.swagger.io:80/v2
# See configuration.py for a list of all supported configuration parameters.
@ -608,7 +608,7 @@ configuration = petstore_api.Configuration(
with petstore_api.ApiClient() as api_client:
# Create an instance of the API class
api_instance = fake_api.FakeApi(api_client)
body = client.Client() # client.Client | client model
body = Client() # Client | client model
# example passing only required values which don't have defaults set
try:
@ -623,11 +623,11 @@ with petstore_api.ApiClient() as api_client:
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**body** | [**client.Client**](Client.md)| client model |
**body** | [**Client**](Client.md)| client model |
### Return type
[**client.Client**](Client.md)
[**Client**](Client.md)
### Authorization

View File

@ -8,7 +8,7 @@ Method | HTTP request | Description
# **test_classname**
> client.Client test_classname(body)
> Client test_classname(body)
To test class name in snake case
@ -21,7 +21,7 @@ To test class name in snake case
import time
import petstore_api
from petstore_api.api import fake_classname_tags_123_api
from petstore_api.model import client
from petstore_api.model.client import Client
from pprint import pprint
# Defining the host is optional and defaults to http://petstore.swagger.io:80/v2
# See configuration.py for a list of all supported configuration parameters.
@ -48,7 +48,7 @@ configuration = petstore_api.Configuration(
with petstore_api.ApiClient(configuration) as api_client:
# Create an instance of the API class
api_instance = fake_classname_tags_123_api.FakeClassnameTags123Api(api_client)
body = client.Client() # client.Client | client model
body = Client() # Client | client model
# example passing only required values which don't have defaults set
try:
@ -63,11 +63,11 @@ with petstore_api.ApiClient(configuration) as api_client:
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**body** | [**client.Client**](Client.md)| client model |
**body** | [**Client**](Client.md)| client model |
### Return type
[**client.Client**](Client.md)
[**Client**](Client.md)
### Authorization

View File

@ -1,4 +1,4 @@
# file.File
# File
Must be named `File` for test.
## Properties

View File

@ -1,10 +1,10 @@
# file_schema_test_class.FileSchemaTestClass
# FileSchemaTestClass
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**file** | [**file.File**](File.md) | | [optional]
**files** | [**[file.File]**](File.md) | | [optional]
**file** | [**File**](File.md) | | [optional]
**files** | [**[File]**](File.md) | | [optional]
[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)

View File

@ -1,4 +1,4 @@
# format_test.FormatTest
# FormatTest
## Properties
Name | Type | Description | Notes

View File

@ -1,4 +1,4 @@
# grandparent.Grandparent
# Grandparent
## Properties
Name | Type | Description | Notes

View File

@ -1,4 +1,4 @@
# grandparent_animal.GrandparentAnimal
# GrandparentAnimal
## Properties
Name | Type | Description | Notes

View File

@ -1,4 +1,4 @@
# has_only_read_only.HasOnlyReadOnly
# HasOnlyReadOnly
## Properties
Name | Type | Description | Notes

View File

@ -1,4 +1,4 @@
# list.List
# List
## Properties
Name | Type | Description | Notes

View File

@ -1,4 +1,4 @@
# map_test.MapTest
# MapTest
## Properties
Name | Type | Description | Notes
@ -6,7 +6,7 @@ Name | Type | Description | Notes
**map_map_of_string** | **{str: ({str: (str,)},)}** | | [optional]
**map_of_enum_string** | **{str: (str,)}** | | [optional]
**direct_map** | **{str: (bool,)}** | | [optional]
**indirect_map** | [**string_boolean_map.StringBooleanMap**](StringBooleanMap.md) | | [optional]
**indirect_map** | [**StringBooleanMap**](StringBooleanMap.md) | | [optional]
[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)

View File

@ -1,11 +1,11 @@
# mixed_properties_and_additional_properties_class.MixedPropertiesAndAdditionalPropertiesClass
# MixedPropertiesAndAdditionalPropertiesClass
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**uuid** | **str** | | [optional]
**date_time** | **datetime** | | [optional]
**map** | [**{str: (animal.Animal,)}**](Animal.md) | | [optional]
**map** | [**{str: (Animal,)}**](Animal.md) | | [optional]
[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)

View File

@ -1,4 +1,4 @@
# model200_response.Model200Response
# Model200Response
Model for testing model name starting with number
## Properties

View File

@ -1,4 +1,4 @@
# model_return.ModelReturn
# ModelReturn
Model for testing reserved words
## Properties

View File

@ -1,4 +1,4 @@
# name.Name
# Name
Model for testing model name same as property name
## Properties

View File

@ -1,4 +1,4 @@
# number_only.NumberOnly
# NumberOnly
## Properties
Name | Type | Description | Notes

View File

@ -1,4 +1,4 @@
# number_with_validations.NumberWithValidations
# NumberWithValidations
## Properties
Name | Type | Description | Notes

View File

@ -1,10 +1,10 @@
# object_model_with_ref_props.ObjectModelWithRefProps
# ObjectModelWithRefProps
a model that includes properties which should stay primitive (String + Boolean) and one which is defined as a class, NumberWithValidations
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**my_number** | [**number_with_validations.NumberWithValidations**](NumberWithValidations.md) | | [optional]
**my_number** | [**NumberWithValidations**](NumberWithValidations.md) | | [optional]
**my_string** | **str** | | [optional]
**my_boolean** | **bool** | | [optional]

View File

@ -1,4 +1,4 @@
# order.Order
# Order
## Properties
Name | Type | Description | Notes

View File

@ -1,4 +1,4 @@
# parent.Parent
# Parent
## Properties
Name | Type | Description | Notes

View File

@ -1,4 +1,4 @@
# parent_all_of.ParentAllOf
# ParentAllOf
## Properties
Name | Type | Description | Notes

View File

@ -1,4 +1,4 @@
# parent_pet.ParentPet
# ParentPet
## Properties
Name | Type | Description | Notes

View File

@ -1,4 +1,4 @@
# pet.Pet
# Pet
## Properties
Name | Type | Description | Notes
@ -6,8 +6,8 @@ Name | Type | Description | Notes
**name** | **str** | |
**photo_urls** | **[str]** | |
**id** | **int** | | [optional]
**category** | [**category.Category**](Category.md) | | [optional]
**tags** | [**[tag.Tag]**](Tag.md) | | [optional]
**category** | [**Category**](Category.md) | | [optional]
**tags** | [**[Tag]**](Tag.md) | | [optional]
**status** | **str** | pet status in the store | [optional]
[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)

View File

@ -27,7 +27,7 @@ Add a new pet to the store
import time
import petstore_api
from petstore_api.api import pet_api
from petstore_api.model import pet
from petstore_api.model.pet import Pet
from pprint import pprint
# Defining the host is optional and defaults to http://petstore.swagger.io:80/v2
# See configuration.py for a list of all supported configuration parameters.
@ -50,7 +50,7 @@ configuration.access_token = 'YOUR_ACCESS_TOKEN'
with petstore_api.ApiClient(configuration) as api_client:
# Create an instance of the API class
api_instance = pet_api.PetApi(api_client)
body = pet.Pet() # pet.Pet | Pet object that needs to be added to the store
body = Pet() # Pet | Pet object that needs to be added to the store
# example passing only required values which don't have defaults set
try:
@ -64,7 +64,7 @@ with petstore_api.ApiClient(configuration) as api_client:
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**body** | [**pet.Pet**](Pet.md)| Pet object that needs to be added to the store |
**body** | [**Pet**](Pet.md)| Pet object that needs to be added to the store |
### Return type
@ -169,7 +169,7 @@ void (empty response body)
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
# **find_pets_by_status**
> [pet.Pet] find_pets_by_status(status)
> [Pet] find_pets_by_status(status)
Finds Pets by status
@ -182,7 +182,7 @@ Multiple status values can be provided with comma separated strings
import time
import petstore_api
from petstore_api.api import pet_api
from petstore_api.model import pet
from petstore_api.model.pet import Pet
from pprint import pprint
# Defining the host is optional and defaults to http://petstore.swagger.io:80/v2
# See configuration.py for a list of all supported configuration parameters.
@ -224,7 +224,7 @@ Name | Type | Description | Notes
### Return type
[**[pet.Pet]**](Pet.md)
[**[Pet]**](Pet.md)
### Authorization
@ -244,7 +244,7 @@ Name | Type | Description | Notes
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
# **find_pets_by_tags**
> [pet.Pet] find_pets_by_tags(tags)
> [Pet] find_pets_by_tags(tags)
Finds Pets by tags
@ -257,7 +257,7 @@ Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3
import time
import petstore_api
from petstore_api.api import pet_api
from petstore_api.model import pet
from petstore_api.model.pet import Pet
from pprint import pprint
# Defining the host is optional and defaults to http://petstore.swagger.io:80/v2
# See configuration.py for a list of all supported configuration parameters.
@ -299,7 +299,7 @@ Name | Type | Description | Notes
### Return type
[**[pet.Pet]**](Pet.md)
[**[Pet]**](Pet.md)
### Authorization
@ -319,7 +319,7 @@ Name | Type | Description | Notes
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
# **get_pet_by_id**
> pet.Pet get_pet_by_id(pet_id)
> Pet get_pet_by_id(pet_id)
Find pet by ID
@ -332,7 +332,7 @@ Returns a single pet
import time
import petstore_api
from petstore_api.api import pet_api
from petstore_api.model import pet
from petstore_api.model.pet import Pet
from pprint import pprint
# Defining the host is optional and defaults to http://petstore.swagger.io:80/v2
# See configuration.py for a list of all supported configuration parameters.
@ -378,7 +378,7 @@ Name | Type | Description | Notes
### Return type
[**pet.Pet**](Pet.md)
[**Pet**](Pet.md)
### Authorization
@ -410,7 +410,7 @@ Update an existing pet
import time
import petstore_api
from petstore_api.api import pet_api
from petstore_api.model import pet
from petstore_api.model.pet import Pet
from pprint import pprint
# Defining the host is optional and defaults to http://petstore.swagger.io:80/v2
# See configuration.py for a list of all supported configuration parameters.
@ -433,7 +433,7 @@ configuration.access_token = 'YOUR_ACCESS_TOKEN'
with petstore_api.ApiClient(configuration) as api_client:
# Create an instance of the API class
api_instance = pet_api.PetApi(api_client)
body = pet.Pet() # pet.Pet | Pet object that needs to be added to the store
body = Pet() # Pet | Pet object that needs to be added to the store
# example passing only required values which don't have defaults set
try:
@ -447,7 +447,7 @@ with petstore_api.ApiClient(configuration) as api_client:
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**body** | [**pet.Pet**](Pet.md)| Pet object that needs to be added to the store |
**body** | [**Pet**](Pet.md)| Pet object that needs to be added to the store |
### Return type
@ -555,7 +555,7 @@ void (empty response body)
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
# **upload_file**
> api_response.ApiResponse upload_file(pet_id)
> ApiResponse upload_file(pet_id)
uploads an image
@ -566,7 +566,7 @@ uploads an image
import time
import petstore_api
from petstore_api.api import pet_api
from petstore_api.model import api_response
from petstore_api.model.api_response import ApiResponse
from pprint import pprint
# Defining the host is optional and defaults to http://petstore.swagger.io:80/v2
# See configuration.py for a list of all supported configuration parameters.
@ -623,7 +623,7 @@ Name | Type | Description | Notes
### Return type
[**api_response.ApiResponse**](ApiResponse.md)
[**ApiResponse**](ApiResponse.md)
### Authorization
@ -642,7 +642,7 @@ Name | Type | Description | Notes
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
# **upload_file_with_required_file**
> api_response.ApiResponse upload_file_with_required_file(pet_id, required_file)
> ApiResponse upload_file_with_required_file(pet_id, required_file)
uploads an image (required)
@ -653,7 +653,7 @@ uploads an image (required)
import time
import petstore_api
from petstore_api.api import pet_api
from petstore_api.model import api_response
from petstore_api.model.api_response import ApiResponse
from pprint import pprint
# Defining the host is optional and defaults to http://petstore.swagger.io:80/v2
# See configuration.py for a list of all supported configuration parameters.
@ -708,7 +708,7 @@ Name | Type | Description | Notes
### Return type
[**api_response.ApiResponse**](ApiResponse.md)
[**ApiResponse**](ApiResponse.md)
### Authorization

View File

@ -1,4 +1,4 @@
# player.Player
# Player
## Properties
Name | Type | Description | Notes

View File

@ -1,4 +1,4 @@
# read_only_first.ReadOnlyFirst
# ReadOnlyFirst
## Properties
Name | Type | Description | Notes

View File

@ -1,4 +1,4 @@
# special_model_name.SpecialModelName
# SpecialModelName
## Properties
Name | Type | Description | Notes

View File

@ -146,7 +146,7 @@ This endpoint does not need any parameter.
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
# **get_order_by_id**
> order.Order get_order_by_id(order_id)
> Order get_order_by_id(order_id)
Find purchase order by ID
@ -158,7 +158,7 @@ For valid response try integer IDs with value <= 5 or > 10. Other values will ge
import time
import petstore_api
from petstore_api.api import store_api
from petstore_api.model import order
from petstore_api.model.order import Order
from pprint import pprint
# Defining the host is optional and defaults to http://petstore.swagger.io:80/v2
# See configuration.py for a list of all supported configuration parameters.
@ -190,7 +190,7 @@ Name | Type | Description | Notes
### Return type
[**order.Order**](Order.md)
[**Order**](Order.md)
### Authorization
@ -211,7 +211,7 @@ No authorization required
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
# **place_order**
> order.Order place_order(body)
> Order place_order(body)
Place an order for a pet
@ -221,7 +221,7 @@ Place an order for a pet
import time
import petstore_api
from petstore_api.api import store_api
from petstore_api.model import order
from petstore_api.model.order import Order
from pprint import pprint
# Defining the host is optional and defaults to http://petstore.swagger.io:80/v2
# See configuration.py for a list of all supported configuration parameters.
@ -234,7 +234,7 @@ configuration = petstore_api.Configuration(
with petstore_api.ApiClient() as api_client:
# Create an instance of the API class
api_instance = store_api.StoreApi(api_client)
body = order.Order() # order.Order | order placed for purchasing the pet
body = Order() # Order | order placed for purchasing the pet
# example passing only required values which don't have defaults set
try:
@ -249,11 +249,11 @@ with petstore_api.ApiClient() as api_client:
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**body** | [**order.Order**](Order.md)| order placed for purchasing the pet |
**body** | [**Order**](Order.md)| order placed for purchasing the pet |
### Return type
[**order.Order**](Order.md)
[**Order**](Order.md)
### Authorization

View File

@ -1,4 +1,4 @@
# string_boolean_map.StringBooleanMap
# StringBooleanMap
## Properties
Name | Type | Description | Notes

View File

@ -1,4 +1,4 @@
# string_enum.StringEnum
# StringEnum
## Properties
Name | Type | Description | Notes

View File

@ -1,4 +1,4 @@
# tag.Tag
# Tag
## Properties
Name | Type | Description | Notes

View File

@ -1,4 +1,4 @@
# type_holder_default.TypeHolderDefault
# TypeHolderDefault
a model to test optional properties with server defaults
## Properties

View File

@ -1,4 +1,4 @@
# type_holder_example.TypeHolderExample
# TypeHolderExample
a model to test required properties with an example and length one enum
## Properties

View File

@ -1,4 +1,4 @@
# user.User
# User
## Properties
Name | Type | Description | Notes

View File

@ -27,7 +27,7 @@ This can only be done by the logged in user.
import time
import petstore_api
from petstore_api.api import user_api
from petstore_api.model import user
from petstore_api.model.user import User
from pprint import pprint
# Defining the host is optional and defaults to http://petstore.swagger.io:80/v2
# See configuration.py for a list of all supported configuration parameters.
@ -40,7 +40,7 @@ configuration = petstore_api.Configuration(
with petstore_api.ApiClient() as api_client:
# Create an instance of the API class
api_instance = user_api.UserApi(api_client)
body = user.User() # user.User | Created user object
body = User() # User | Created user object
# example passing only required values which don't have defaults set
try:
@ -54,7 +54,7 @@ with petstore_api.ApiClient() as api_client:
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**body** | [**user.User**](User.md)| Created user object |
**body** | [**User**](User.md)| Created user object |
### Return type
@ -87,7 +87,7 @@ Creates list of users with given input array
import time
import petstore_api
from petstore_api.api import user_api
from petstore_api.model import user
from petstore_api.model.user import User
from pprint import pprint
# Defining the host is optional and defaults to http://petstore.swagger.io:80/v2
# See configuration.py for a list of all supported configuration parameters.
@ -100,7 +100,7 @@ configuration = petstore_api.Configuration(
with petstore_api.ApiClient() as api_client:
# Create an instance of the API class
api_instance = user_api.UserApi(api_client)
body = [user.User()] # [user.User] | List of user object
body = [User()] # [User] | List of user object
# example passing only required values which don't have defaults set
try:
@ -114,7 +114,7 @@ with petstore_api.ApiClient() as api_client:
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**body** | [**[user.User]**](User.md)| List of user object |
**body** | [**[User]**](User.md)| List of user object |
### Return type
@ -147,7 +147,7 @@ Creates list of users with given input array
import time
import petstore_api
from petstore_api.api import user_api
from petstore_api.model import user
from petstore_api.model.user import User
from pprint import pprint
# Defining the host is optional and defaults to http://petstore.swagger.io:80/v2
# See configuration.py for a list of all supported configuration parameters.
@ -160,7 +160,7 @@ configuration = petstore_api.Configuration(
with petstore_api.ApiClient() as api_client:
# Create an instance of the API class
api_instance = user_api.UserApi(api_client)
body = [user.User()] # [user.User] | List of user object
body = [User()] # [User] | List of user object
# example passing only required values which don't have defaults set
try:
@ -174,7 +174,7 @@ with petstore_api.ApiClient() as api_client:
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**body** | [**[user.User]**](User.md)| List of user object |
**body** | [**[User]**](User.md)| List of user object |
### Return type
@ -259,7 +259,7 @@ No authorization required
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
# **get_user_by_name**
> user.User get_user_by_name(username)
> User get_user_by_name(username)
Get user by user name
@ -269,7 +269,7 @@ Get user by user name
import time
import petstore_api
from petstore_api.api import user_api
from petstore_api.model import user
from petstore_api.model.user import User
from pprint import pprint
# Defining the host is optional and defaults to http://petstore.swagger.io:80/v2
# See configuration.py for a list of all supported configuration parameters.
@ -301,7 +301,7 @@ Name | Type | Description | Notes
### Return type
[**user.User**](User.md)
[**User**](User.md)
### Authorization
@ -452,7 +452,7 @@ This can only be done by the logged in user.
import time
import petstore_api
from petstore_api.api import user_api
from petstore_api.model import user
from petstore_api.model.user import User
from pprint import pprint
# Defining the host is optional and defaults to http://petstore.swagger.io:80/v2
# See configuration.py for a list of all supported configuration parameters.
@ -466,7 +466,7 @@ with petstore_api.ApiClient() as api_client:
# Create an instance of the API class
api_instance = user_api.UserApi(api_client)
username = 'username_example' # str | name that need to be deleted
body = user.User() # user.User | Updated user object
body = User() # User | Updated user object
# example passing only required values which don't have defaults set
try:
@ -481,7 +481,7 @@ with petstore_api.ApiClient() as api_client:
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**username** | **str**| name that need to be deleted |
**body** | [**user.User**](User.md)| Updated user object |
**body** | [**User**](User.md)| Updated user object |
### Return type

View File

@ -1,4 +1,4 @@
# xml_item.XmlItem
# XmlItem
## Properties
Name | Type | Description | Notes

View File

@ -23,7 +23,7 @@ from petstore_api.model_utils import ( # noqa: F401
none_type,
validate_and_convert_types
)
from petstore_api.model import client
from petstore_api.model.client import Client
class AnotherFakeApi(object):
@ -53,7 +53,7 @@ class AnotherFakeApi(object):
>>> result = thread.get()
Args:
body (client.Client): client model
body (Client): client model
Keyword Args:
_return_http_data_only (bool): response data without head status
@ -77,7 +77,7 @@ class AnotherFakeApi(object):
async_req (bool): execute request asynchronously
Returns:
client.Client
Client
If the method is called asynchronously, returns the request
thread.
"""
@ -106,7 +106,7 @@ class AnotherFakeApi(object):
self.call_123_test_special_tags = Endpoint(
settings={
'response_type': (client.Client,),
'response_type': (Client,),
'auth': [],
'endpoint_path': '/another-fake/dummy',
'operation_id': 'call_123_test_special_tags',
@ -134,7 +134,7 @@ class AnotherFakeApi(object):
},
'openapi_types': {
'body':
(client.Client,),
(Client,),
},
'attribute_map': {
},

View File

@ -23,14 +23,14 @@ from petstore_api.model_utils import ( # noqa: F401
none_type,
validate_and_convert_types
)
from petstore_api.model import animal_farm
from petstore_api.model import xml_item
from petstore_api.model import number_with_validations
from petstore_api.model import object_model_with_ref_props
from petstore_api.model import string_enum
from petstore_api.model import file_schema_test_class
from petstore_api.model import user
from petstore_api.model import client
from petstore_api.model.animal_farm import AnimalFarm
from petstore_api.model.client import Client
from petstore_api.model.file_schema_test_class import FileSchemaTestClass
from petstore_api.model.number_with_validations import NumberWithValidations
from petstore_api.model.object_model_with_ref_props import ObjectModelWithRefProps
from petstore_api.model.string_enum import StringEnum
from petstore_api.model.user import User
from petstore_api.model.xml_item import XmlItem
class FakeApi(object):
@ -60,7 +60,7 @@ class FakeApi(object):
Keyword Args:
body (animal_farm.AnimalFarm): Input model. [optional]
body (AnimalFarm): Input model. [optional]
_return_http_data_only (bool): response data without head status
code and headers. Default is True.
_preload_content (bool): if False, the urllib3.HTTPResponse object
@ -82,7 +82,7 @@ class FakeApi(object):
async_req (bool): execute request asynchronously
Returns:
animal_farm.AnimalFarm
AnimalFarm
If the method is called asynchronously, returns the request
thread.
"""
@ -109,7 +109,7 @@ class FakeApi(object):
self.array_model = Endpoint(
settings={
'response_type': (animal_farm.AnimalFarm,),
'response_type': (AnimalFarm,),
'auth': [],
'endpoint_path': '/fake/refs/arraymodel',
'operation_id': 'array_model',
@ -135,7 +135,7 @@ class FakeApi(object):
},
'openapi_types': {
'body':
(animal_farm.AnimalFarm,),
(AnimalFarm,),
},
'attribute_map': {
},
@ -280,7 +280,7 @@ class FakeApi(object):
>>> result = thread.get()
Args:
xml_item (xml_item.XmlItem): XmlItem Body
xml_item (XmlItem): XmlItem Body
Keyword Args:
_return_http_data_only (bool): response data without head status
@ -361,7 +361,7 @@ class FakeApi(object):
},
'openapi_types': {
'xml_item':
(xml_item.XmlItem,),
(XmlItem,),
},
'attribute_map': {
},
@ -401,7 +401,7 @@ class FakeApi(object):
Keyword Args:
body (number_with_validations.NumberWithValidations): Input number as post body. [optional]
body (NumberWithValidations): Input number as post body. [optional]
_return_http_data_only (bool): response data without head status
code and headers. Default is True.
_preload_content (bool): if False, the urllib3.HTTPResponse object
@ -423,7 +423,7 @@ class FakeApi(object):
async_req (bool): execute request asynchronously
Returns:
number_with_validations.NumberWithValidations
NumberWithValidations
If the method is called asynchronously, returns the request
thread.
"""
@ -450,7 +450,7 @@ class FakeApi(object):
self.number_with_validations = Endpoint(
settings={
'response_type': (number_with_validations.NumberWithValidations,),
'response_type': (NumberWithValidations,),
'auth': [],
'endpoint_path': '/fake/refs/number',
'operation_id': 'number_with_validations',
@ -476,7 +476,7 @@ class FakeApi(object):
},
'openapi_types': {
'body':
(number_with_validations.NumberWithValidations,),
(NumberWithValidations,),
},
'attribute_map': {
},
@ -511,7 +511,7 @@ class FakeApi(object):
Keyword Args:
body (object_model_with_ref_props.ObjectModelWithRefProps): Input model. [optional]
body (ObjectModelWithRefProps): Input model. [optional]
_return_http_data_only (bool): response data without head status
code and headers. Default is True.
_preload_content (bool): if False, the urllib3.HTTPResponse object
@ -533,7 +533,7 @@ class FakeApi(object):
async_req (bool): execute request asynchronously
Returns:
object_model_with_ref_props.ObjectModelWithRefProps
ObjectModelWithRefProps
If the method is called asynchronously, returns the request
thread.
"""
@ -560,7 +560,7 @@ class FakeApi(object):
self.object_model_with_ref_props = Endpoint(
settings={
'response_type': (object_model_with_ref_props.ObjectModelWithRefProps,),
'response_type': (ObjectModelWithRefProps,),
'auth': [],
'endpoint_path': '/fake/refs/object_model_with_ref_props',
'operation_id': 'object_model_with_ref_props',
@ -586,7 +586,7 @@ class FakeApi(object):
},
'openapi_types': {
'body':
(object_model_with_ref_props.ObjectModelWithRefProps,),
(ObjectModelWithRefProps,),
},
'attribute_map': {
},
@ -731,7 +731,7 @@ class FakeApi(object):
Keyword Args:
body (string_enum.StringEnum): Input enum. [optional]
body (StringEnum): Input enum. [optional]
_return_http_data_only (bool): response data without head status
code and headers. Default is True.
_preload_content (bool): if False, the urllib3.HTTPResponse object
@ -753,7 +753,7 @@ class FakeApi(object):
async_req (bool): execute request asynchronously
Returns:
string_enum.StringEnum
StringEnum
If the method is called asynchronously, returns the request
thread.
"""
@ -780,7 +780,7 @@ class FakeApi(object):
self.string_enum = Endpoint(
settings={
'response_type': (string_enum.StringEnum,),
'response_type': (StringEnum,),
'auth': [],
'endpoint_path': '/fake/refs/enum',
'operation_id': 'string_enum',
@ -806,7 +806,7 @@ class FakeApi(object):
},
'openapi_types': {
'body':
(string_enum.StringEnum,),
(StringEnum,),
},
'attribute_map': {
},
@ -841,7 +841,7 @@ class FakeApi(object):
>>> result = thread.get()
Args:
body (file_schema_test_class.FileSchemaTestClass):
body (FileSchemaTestClass):
Keyword Args:
_return_http_data_only (bool): response data without head status
@ -922,7 +922,7 @@ class FakeApi(object):
},
'openapi_types': {
'body':
(file_schema_test_class.FileSchemaTestClass,),
(FileSchemaTestClass,),
},
'attribute_map': {
},
@ -958,7 +958,7 @@ class FakeApi(object):
Args:
query (str):
body (user.User):
body (User):
Keyword Args:
_return_http_data_only (bool): response data without head status
@ -1045,7 +1045,7 @@ class FakeApi(object):
'query':
(str,),
'body':
(user.User,),
(User,),
},
'attribute_map': {
'query': 'query',
@ -1082,7 +1082,7 @@ class FakeApi(object):
>>> result = thread.get()
Args:
body (client.Client): client model
body (Client): client model
Keyword Args:
_return_http_data_only (bool): response data without head status
@ -1106,7 +1106,7 @@ class FakeApi(object):
async_req (bool): execute request asynchronously
Returns:
client.Client
Client
If the method is called asynchronously, returns the request
thread.
"""
@ -1135,7 +1135,7 @@ class FakeApi(object):
self.test_client_model = Endpoint(
settings={
'response_type': (client.Client,),
'response_type': (Client,),
'auth': [],
'endpoint_path': '/fake',
'operation_id': 'test_client_model',
@ -1163,7 +1163,7 @@ class FakeApi(object):
},
'openapi_types': {
'body':
(client.Client,),
(Client,),
},
'attribute_map': {
},

View File

@ -23,7 +23,7 @@ from petstore_api.model_utils import ( # noqa: F401
none_type,
validate_and_convert_types
)
from petstore_api.model import client
from petstore_api.model.client import Client
class FakeClassnameTags123Api(object):
@ -53,7 +53,7 @@ class FakeClassnameTags123Api(object):
>>> result = thread.get()
Args:
body (client.Client): client model
body (Client): client model
Keyword Args:
_return_http_data_only (bool): response data without head status
@ -77,7 +77,7 @@ class FakeClassnameTags123Api(object):
async_req (bool): execute request asynchronously
Returns:
client.Client
Client
If the method is called asynchronously, returns the request
thread.
"""
@ -106,7 +106,7 @@ class FakeClassnameTags123Api(object):
self.test_classname = Endpoint(
settings={
'response_type': (client.Client,),
'response_type': (Client,),
'auth': [
'api_key_query'
],
@ -136,7 +136,7 @@ class FakeClassnameTags123Api(object):
},
'openapi_types': {
'body':
(client.Client,),
(Client,),
},
'attribute_map': {
},

View File

@ -23,8 +23,8 @@ from petstore_api.model_utils import ( # noqa: F401
none_type,
validate_and_convert_types
)
from petstore_api.model import pet
from petstore_api.model import api_response
from petstore_api.model.api_response import ApiResponse
from petstore_api.model.pet import Pet
class PetApi(object):
@ -53,7 +53,7 @@ class PetApi(object):
>>> result = thread.get()
Args:
body (pet.Pet): Pet object that needs to be added to the store
body (Pet): Pet object that needs to be added to the store
Keyword Args:
_return_http_data_only (bool): response data without head status
@ -136,7 +136,7 @@ class PetApi(object):
},
'openapi_types': {
'body':
(pet.Pet,),
(Pet,),
},
'attribute_map': {
},
@ -318,7 +318,7 @@ class PetApi(object):
async_req (bool): execute request asynchronously
Returns:
[pet.Pet]
[Pet]
If the method is called asynchronously, returns the request
thread.
"""
@ -347,7 +347,7 @@ class PetApi(object):
self.find_pets_by_status = Endpoint(
settings={
'response_type': ([pet.Pet],),
'response_type': ([Pet],),
'auth': [
'petstore_auth'
],
@ -446,7 +446,7 @@ class PetApi(object):
async_req (bool): execute request asynchronously
Returns:
[pet.Pet]
[Pet]
If the method is called asynchronously, returns the request
thread.
"""
@ -475,7 +475,7 @@ class PetApi(object):
self.find_pets_by_tags = Endpoint(
settings={
'response_type': ([pet.Pet],),
'response_type': ([Pet],),
'auth': [
'petstore_auth'
],
@ -567,7 +567,7 @@ class PetApi(object):
async_req (bool): execute request asynchronously
Returns:
pet.Pet
Pet
If the method is called asynchronously, returns the request
thread.
"""
@ -596,7 +596,7 @@ class PetApi(object):
self.get_pet_by_id = Endpoint(
settings={
'response_type': (pet.Pet,),
'response_type': (Pet,),
'auth': [
'api_key'
],
@ -662,7 +662,7 @@ class PetApi(object):
>>> result = thread.get()
Args:
body (pet.Pet): Pet object that needs to be added to the store
body (Pet): Pet object that needs to be added to the store
Keyword Args:
_return_http_data_only (bool): response data without head status
@ -745,7 +745,7 @@ class PetApi(object):
},
'openapi_types': {
'body':
(pet.Pet,),
(Pet,),
},
'attribute_map': {
},
@ -937,7 +937,7 @@ class PetApi(object):
async_req (bool): execute request asynchronously
Returns:
api_response.ApiResponse
ApiResponse
If the method is called asynchronously, returns the request
thread.
"""
@ -966,7 +966,7 @@ class PetApi(object):
self.upload_file = Endpoint(
settings={
'response_type': (api_response.ApiResponse,),
'response_type': (ApiResponse,),
'auth': [
'petstore_auth'
],
@ -1076,7 +1076,7 @@ class PetApi(object):
async_req (bool): execute request asynchronously
Returns:
api_response.ApiResponse
ApiResponse
If the method is called asynchronously, returns the request
thread.
"""
@ -1107,7 +1107,7 @@ class PetApi(object):
self.upload_file_with_required_file = Endpoint(
settings={
'response_type': (api_response.ApiResponse,),
'response_type': (ApiResponse,),
'auth': [
'petstore_auth'
],

View File

@ -23,7 +23,7 @@ from petstore_api.model_utils import ( # noqa: F401
none_type,
validate_and_convert_types
)
from petstore_api.model import order
from petstore_api.model.order import Order
class StoreApi(object):
@ -299,7 +299,7 @@ class StoreApi(object):
async_req (bool): execute request asynchronously
Returns:
order.Order
Order
If the method is called asynchronously, returns the request
thread.
"""
@ -328,7 +328,7 @@ class StoreApi(object):
self.get_order_by_id = Endpoint(
settings={
'response_type': (order.Order,),
'response_type': (Order,),
'auth': [],
'endpoint_path': '/store/order/{order_id}',
'operation_id': 'get_order_by_id',
@ -398,7 +398,7 @@ class StoreApi(object):
>>> result = thread.get()
Args:
body (order.Order): order placed for purchasing the pet
body (Order): order placed for purchasing the pet
Keyword Args:
_return_http_data_only (bool): response data without head status
@ -422,7 +422,7 @@ class StoreApi(object):
async_req (bool): execute request asynchronously
Returns:
order.Order
Order
If the method is called asynchronously, returns the request
thread.
"""
@ -451,7 +451,7 @@ class StoreApi(object):
self.place_order = Endpoint(
settings={
'response_type': (order.Order,),
'response_type': (Order,),
'auth': [],
'endpoint_path': '/store/order',
'operation_id': 'place_order',
@ -479,7 +479,7 @@ class StoreApi(object):
},
'openapi_types': {
'body':
(order.Order,),
(Order,),
},
'attribute_map': {
},

View File

@ -23,7 +23,7 @@ from petstore_api.model_utils import ( # noqa: F401
none_type,
validate_and_convert_types
)
from petstore_api.model import user
from petstore_api.model.user import User
class UserApi(object):
@ -53,7 +53,7 @@ class UserApi(object):
>>> result = thread.get()
Args:
body (user.User): Created user object
body (User): Created user object
Keyword Args:
_return_http_data_only (bool): response data without head status
@ -134,7 +134,7 @@ class UserApi(object):
},
'openapi_types': {
'body':
(user.User,),
(User,),
},
'attribute_map': {
},
@ -166,7 +166,7 @@ class UserApi(object):
>>> result = thread.get()
Args:
body ([user.User]): List of user object
body ([User]): List of user object
Keyword Args:
_return_http_data_only (bool): response data without head status
@ -247,7 +247,7 @@ class UserApi(object):
},
'openapi_types': {
'body':
([user.User],),
([User],),
},
'attribute_map': {
},
@ -279,7 +279,7 @@ class UserApi(object):
>>> result = thread.get()
Args:
body ([user.User]): List of user object
body ([User]): List of user object
Keyword Args:
_return_http_data_only (bool): response data without head status
@ -360,7 +360,7 @@ class UserApi(object):
},
'openapi_types': {
'body':
([user.User],),
([User],),
},
'attribute_map': {
},
@ -531,7 +531,7 @@ class UserApi(object):
async_req (bool): execute request asynchronously
Returns:
user.User
User
If the method is called asynchronously, returns the request
thread.
"""
@ -560,7 +560,7 @@ class UserApi(object):
self.get_user_by_name = Endpoint(
settings={
'response_type': (user.User,),
'response_type': (User,),
'auth': [],
'endpoint_path': '/user/{username}',
'operation_id': 'get_user_by_name',
@ -856,7 +856,7 @@ class UserApi(object):
Args:
username (str): name that need to be deleted
body (user.User): Updated user object
body (User): Updated user object
Keyword Args:
_return_http_data_only (bool): response data without head status
@ -943,7 +943,7 @@ class UserApi(object):
'username':
(str,),
'body':
(user.User,),
(User,),
},
'attribute_map': {
'username': 'username',

View File

@ -61,15 +61,21 @@ class AdditionalPropertiesAnyType(ModelNormal):
validations = {
}
additional_properties_type = (bool, date, datetime, dict, float, int, list, str,) # noqa: E501
@cached_property
def additional_properties_type():
"""
This must be a method because a model may have properties that are
of type self, this must run after the class is loaded
"""
return (bool, date, datetime, dict, float, int, list, str,) # noqa: E501
_nullable = False
@cached_property
def openapi_types():
"""
This must be a class method so a model may have properties that are
of type self, this ensures that we don't create a cyclic import
This must be a method because a model may have properties that are
of type self, this must run after the class is loaded
Returns
openapi_types (dict): The key is attribute name
@ -83,6 +89,7 @@ class AdditionalPropertiesAnyType(ModelNormal):
def discriminator():
return None
attribute_map = {
'name': 'name', # noqa: E501
}
@ -100,7 +107,7 @@ class AdditionalPropertiesAnyType(ModelNormal):
@convert_js_args_to_python_args
def __init__(self, *args, **kwargs): # noqa: E501
"""additional_properties_any_type.AdditionalPropertiesAnyType - a model defined in OpenAPI
"""AdditionalPropertiesAnyType - a model defined in OpenAPI
Keyword Args:
_check_type (bool): if True, values for parameters in openapi_types

View File

@ -61,15 +61,21 @@ class AdditionalPropertiesArray(ModelNormal):
validations = {
}
additional_properties_type = ([bool, date, datetime, dict, float, int, list, str],) # noqa: E501
@cached_property
def additional_properties_type():
"""
This must be a method because a model may have properties that are
of type self, this must run after the class is loaded
"""
return ([bool, date, datetime, dict, float, int, list, str],) # noqa: E501
_nullable = False
@cached_property
def openapi_types():
"""
This must be a class method so a model may have properties that are
of type self, this ensures that we don't create a cyclic import
This must be a method because a model may have properties that are
of type self, this must run after the class is loaded
Returns
openapi_types (dict): The key is attribute name
@ -83,6 +89,7 @@ class AdditionalPropertiesArray(ModelNormal):
def discriminator():
return None
attribute_map = {
'name': 'name', # noqa: E501
}
@ -100,7 +107,7 @@ class AdditionalPropertiesArray(ModelNormal):
@convert_js_args_to_python_args
def __init__(self, *args, **kwargs): # noqa: E501
"""additional_properties_array.AdditionalPropertiesArray - a model defined in OpenAPI
"""AdditionalPropertiesArray - a model defined in OpenAPI
Keyword Args:
_check_type (bool): if True, values for parameters in openapi_types

View File

@ -61,15 +61,21 @@ class AdditionalPropertiesBoolean(ModelNormal):
validations = {
}
additional_properties_type = (bool,) # noqa: E501
@cached_property
def additional_properties_type():
"""
This must be a method because a model may have properties that are
of type self, this must run after the class is loaded
"""
return (bool,) # noqa: E501
_nullable = False
@cached_property
def openapi_types():
"""
This must be a class method so a model may have properties that are
of type self, this ensures that we don't create a cyclic import
This must be a method because a model may have properties that are
of type self, this must run after the class is loaded
Returns
openapi_types (dict): The key is attribute name
@ -83,6 +89,7 @@ class AdditionalPropertiesBoolean(ModelNormal):
def discriminator():
return None
attribute_map = {
'name': 'name', # noqa: E501
}
@ -100,7 +107,7 @@ class AdditionalPropertiesBoolean(ModelNormal):
@convert_js_args_to_python_args
def __init__(self, *args, **kwargs): # noqa: E501
"""additional_properties_boolean.AdditionalPropertiesBoolean - a model defined in OpenAPI
"""AdditionalPropertiesBoolean - a model defined in OpenAPI
Keyword Args:
_check_type (bool): if True, values for parameters in openapi_types

View File

@ -68,8 +68,8 @@ class AdditionalPropertiesClass(ModelNormal):
@cached_property
def openapi_types():
"""
This must be a class method so a model may have properties that are
of type self, this ensures that we don't create a cyclic import
This must be a method because a model may have properties that are
of type self, this must run after the class is loaded
Returns
openapi_types (dict): The key is attribute name
@ -93,6 +93,7 @@ class AdditionalPropertiesClass(ModelNormal):
def discriminator():
return None
attribute_map = {
'map_string': 'map_string', # noqa: E501
'map_number': 'map_number', # noqa: E501
@ -120,7 +121,7 @@ class AdditionalPropertiesClass(ModelNormal):
@convert_js_args_to_python_args
def __init__(self, *args, **kwargs): # noqa: E501
"""additional_properties_class.AdditionalPropertiesClass - a model defined in OpenAPI
"""AdditionalPropertiesClass - a model defined in OpenAPI
Keyword Args:
_check_type (bool): if True, values for parameters in openapi_types

View File

@ -61,15 +61,21 @@ class AdditionalPropertiesInteger(ModelNormal):
validations = {
}
additional_properties_type = (int,) # noqa: E501
@cached_property
def additional_properties_type():
"""
This must be a method because a model may have properties that are
of type self, this must run after the class is loaded
"""
return (int,) # noqa: E501
_nullable = False
@cached_property
def openapi_types():
"""
This must be a class method so a model may have properties that are
of type self, this ensures that we don't create a cyclic import
This must be a method because a model may have properties that are
of type self, this must run after the class is loaded
Returns
openapi_types (dict): The key is attribute name
@ -83,6 +89,7 @@ class AdditionalPropertiesInteger(ModelNormal):
def discriminator():
return None
attribute_map = {
'name': 'name', # noqa: E501
}
@ -100,7 +107,7 @@ class AdditionalPropertiesInteger(ModelNormal):
@convert_js_args_to_python_args
def __init__(self, *args, **kwargs): # noqa: E501
"""additional_properties_integer.AdditionalPropertiesInteger - a model defined in OpenAPI
"""AdditionalPropertiesInteger - a model defined in OpenAPI
Keyword Args:
_check_type (bool): if True, values for parameters in openapi_types

View File

@ -61,15 +61,21 @@ class AdditionalPropertiesNumber(ModelNormal):
validations = {
}
additional_properties_type = (float,) # noqa: E501
@cached_property
def additional_properties_type():
"""
This must be a method because a model may have properties that are
of type self, this must run after the class is loaded
"""
return (float,) # noqa: E501
_nullable = False
@cached_property
def openapi_types():
"""
This must be a class method so a model may have properties that are
of type self, this ensures that we don't create a cyclic import
This must be a method because a model may have properties that are
of type self, this must run after the class is loaded
Returns
openapi_types (dict): The key is attribute name
@ -83,6 +89,7 @@ class AdditionalPropertiesNumber(ModelNormal):
def discriminator():
return None
attribute_map = {
'name': 'name', # noqa: E501
}
@ -100,7 +107,7 @@ class AdditionalPropertiesNumber(ModelNormal):
@convert_js_args_to_python_args
def __init__(self, *args, **kwargs): # noqa: E501
"""additional_properties_number.AdditionalPropertiesNumber - a model defined in OpenAPI
"""AdditionalPropertiesNumber - a model defined in OpenAPI
Keyword Args:
_check_type (bool): if True, values for parameters in openapi_types

View File

@ -61,15 +61,21 @@ class AdditionalPropertiesObject(ModelNormal):
validations = {
}
additional_properties_type = ({str: (bool, date, datetime, dict, float, int, list, str,)},) # noqa: E501
@cached_property
def additional_properties_type():
"""
This must be a method because a model may have properties that are
of type self, this must run after the class is loaded
"""
return ({str: (bool, date, datetime, dict, float, int, list, str,)},) # noqa: E501
_nullable = False
@cached_property
def openapi_types():
"""
This must be a class method so a model may have properties that are
of type self, this ensures that we don't create a cyclic import
This must be a method because a model may have properties that are
of type self, this must run after the class is loaded
Returns
openapi_types (dict): The key is attribute name
@ -83,6 +89,7 @@ class AdditionalPropertiesObject(ModelNormal):
def discriminator():
return None
attribute_map = {
'name': 'name', # noqa: E501
}
@ -100,7 +107,7 @@ class AdditionalPropertiesObject(ModelNormal):
@convert_js_args_to_python_args
def __init__(self, *args, **kwargs): # noqa: E501
"""additional_properties_object.AdditionalPropertiesObject - a model defined in OpenAPI
"""AdditionalPropertiesObject - a model defined in OpenAPI
Keyword Args:
_check_type (bool): if True, values for parameters in openapi_types

View File

@ -61,15 +61,21 @@ class AdditionalPropertiesString(ModelNormal):
validations = {
}
additional_properties_type = (str,) # noqa: E501
@cached_property
def additional_properties_type():
"""
This must be a method because a model may have properties that are
of type self, this must run after the class is loaded
"""
return (str,) # noqa: E501
_nullable = False
@cached_property
def openapi_types():
"""
This must be a class method so a model may have properties that are
of type self, this ensures that we don't create a cyclic import
This must be a method because a model may have properties that are
of type self, this must run after the class is loaded
Returns
openapi_types (dict): The key is attribute name
@ -83,6 +89,7 @@ class AdditionalPropertiesString(ModelNormal):
def discriminator():
return None
attribute_map = {
'name': 'name', # noqa: E501
}
@ -100,7 +107,7 @@ class AdditionalPropertiesString(ModelNormal):
@convert_js_args_to_python_args
def __init__(self, *args, **kwargs): # noqa: E501
"""additional_properties_string.AdditionalPropertiesString - a model defined in OpenAPI
"""AdditionalPropertiesString - a model defined in OpenAPI
Keyword Args:
_check_type (bool): if True, values for parameters in openapi_types

View File

@ -29,16 +29,12 @@ from petstore_api.model_utils import ( # noqa: F401
none_type,
validate_get_composed_info,
)
try:
from petstore_api.model import cat
except ImportError:
cat = sys.modules[
'petstore_api.model.cat']
try:
from petstore_api.model import dog
except ImportError:
dog = sys.modules[
'petstore_api.model.dog']
def lazy_import():
from petstore_api.model.cat import Cat
from petstore_api.model.dog import Dog
globals()['Cat'] = Cat
globals()['Dog'] = Dog
class Animal(ModelNormal):
@ -78,13 +74,14 @@ class Animal(ModelNormal):
@cached_property
def openapi_types():
"""
This must be a class method so a model may have properties that are
of type self, this ensures that we don't create a cyclic import
This must be a method because a model may have properties that are
of type self, this must run after the class is loaded
Returns
openapi_types (dict): The key is attribute name
and the value is attribute type.
"""
lazy_import()
return {
'class_name': (str,), # noqa: E501
'color': (str,), # noqa: E501
@ -92,9 +89,10 @@ class Animal(ModelNormal):
@cached_property
def discriminator():
lazy_import()
val = {
'Cat': cat.Cat,
'Dog': dog.Dog,
'Cat': Cat,
'Dog': Dog,
}
if not val:
return None
@ -118,7 +116,7 @@ class Animal(ModelNormal):
@convert_js_args_to_python_args
def __init__(self, class_name, *args, **kwargs): # noqa: E501
"""animal.Animal - a model defined in OpenAPI
"""Animal - a model defined in OpenAPI
Args:
class_name (str):

View File

@ -29,11 +29,10 @@ from petstore_api.model_utils import ( # noqa: F401
none_type,
validate_get_composed_info,
)
try:
from petstore_api.model import animal
except ImportError:
animal = sys.modules[
'petstore_api.model.animal']
def lazy_import():
from petstore_api.model.animal import Animal
globals()['Animal'] = Animal
class AnimalFarm(ModelSimple):
@ -69,21 +68,23 @@ class AnimalFarm(ModelSimple):
@cached_property
def openapi_types():
"""
This must be a class method so a model may have properties that are
of type self, this ensures that we don't create a cyclic import
This must be a method because a model may have properties that are
of type self, this must run after the class is loaded
Returns
openapi_types (dict): The key is attribute name
and the value is attribute type.
"""
lazy_import()
return {
'value': ([animal.Animal],),
'value': ([Animal],),
}
@cached_property
def discriminator():
return None
attribute_map = {}
_composed_schemas = None
@ -99,10 +100,10 @@ class AnimalFarm(ModelSimple):
@convert_js_args_to_python_args
def __init__(self, value, *args, **kwargs):
"""animal_farm.AnimalFarm - a model defined in OpenAPI
"""AnimalFarm - a model defined in OpenAPI
Args:
value ([animal.Animal]): # noqa: E501
value ([Animal]): # noqa: E501
Keyword Args:
_check_type (bool): if True, values for parameters in openapi_types

View File

@ -68,8 +68,8 @@ class ApiResponse(ModelNormal):
@cached_property
def openapi_types():
"""
This must be a class method so a model may have properties that are
of type self, this ensures that we don't create a cyclic import
This must be a method because a model may have properties that are
of type self, this must run after the class is loaded
Returns
openapi_types (dict): The key is attribute name
@ -85,6 +85,7 @@ class ApiResponse(ModelNormal):
def discriminator():
return None
attribute_map = {
'code': 'code', # noqa: E501
'type': 'type', # noqa: E501
@ -104,7 +105,7 @@ class ApiResponse(ModelNormal):
@convert_js_args_to_python_args
def __init__(self, *args, **kwargs): # noqa: E501
"""api_response.ApiResponse - a model defined in OpenAPI
"""ApiResponse - a model defined in OpenAPI
Keyword Args:
_check_type (bool): if True, values for parameters in openapi_types

View File

@ -68,8 +68,8 @@ class ArrayOfArrayOfNumberOnly(ModelNormal):
@cached_property
def openapi_types():
"""
This must be a class method so a model may have properties that are
of type self, this ensures that we don't create a cyclic import
This must be a method because a model may have properties that are
of type self, this must run after the class is loaded
Returns
openapi_types (dict): The key is attribute name
@ -83,6 +83,7 @@ class ArrayOfArrayOfNumberOnly(ModelNormal):
def discriminator():
return None
attribute_map = {
'array_array_number': 'ArrayArrayNumber', # noqa: E501
}
@ -100,7 +101,7 @@ class ArrayOfArrayOfNumberOnly(ModelNormal):
@convert_js_args_to_python_args
def __init__(self, *args, **kwargs): # noqa: E501
"""array_of_array_of_number_only.ArrayOfArrayOfNumberOnly - a model defined in OpenAPI
"""ArrayOfArrayOfNumberOnly - a model defined in OpenAPI
Keyword Args:
_check_type (bool): if True, values for parameters in openapi_types

View File

@ -68,8 +68,8 @@ class ArrayOfNumberOnly(ModelNormal):
@cached_property
def openapi_types():
"""
This must be a class method so a model may have properties that are
of type self, this ensures that we don't create a cyclic import
This must be a method because a model may have properties that are
of type self, this must run after the class is loaded
Returns
openapi_types (dict): The key is attribute name
@ -83,6 +83,7 @@ class ArrayOfNumberOnly(ModelNormal):
def discriminator():
return None
attribute_map = {
'array_number': 'ArrayNumber', # noqa: E501
}
@ -100,7 +101,7 @@ class ArrayOfNumberOnly(ModelNormal):
@convert_js_args_to_python_args
def __init__(self, *args, **kwargs): # noqa: E501
"""array_of_number_only.ArrayOfNumberOnly - a model defined in OpenAPI
"""ArrayOfNumberOnly - a model defined in OpenAPI
Keyword Args:
_check_type (bool): if True, values for parameters in openapi_types

View File

@ -29,11 +29,10 @@ from petstore_api.model_utils import ( # noqa: F401
none_type,
validate_get_composed_info,
)
try:
from petstore_api.model import read_only_first
except ImportError:
read_only_first = sys.modules[
'petstore_api.model.read_only_first']
def lazy_import():
from petstore_api.model.read_only_first import ReadOnlyFirst
globals()['ReadOnlyFirst'] = ReadOnlyFirst
class ArrayTest(ModelNormal):
@ -73,23 +72,25 @@ class ArrayTest(ModelNormal):
@cached_property
def openapi_types():
"""
This must be a class method so a model may have properties that are
of type self, this ensures that we don't create a cyclic import
This must be a method because a model may have properties that are
of type self, this must run after the class is loaded
Returns
openapi_types (dict): The key is attribute name
and the value is attribute type.
"""
lazy_import()
return {
'array_of_string': ([str],), # noqa: E501
'array_array_of_integer': ([[int]],), # noqa: E501
'array_array_of_model': ([[read_only_first.ReadOnlyFirst]],), # noqa: E501
'array_array_of_model': ([[ReadOnlyFirst]],), # noqa: E501
}
@cached_property
def discriminator():
return None
attribute_map = {
'array_of_string': 'array_of_string', # noqa: E501
'array_array_of_integer': 'array_array_of_integer', # noqa: E501
@ -109,7 +110,7 @@ class ArrayTest(ModelNormal):
@convert_js_args_to_python_args
def __init__(self, *args, **kwargs): # noqa: E501
"""array_test.ArrayTest - a model defined in OpenAPI
"""ArrayTest - a model defined in OpenAPI
Keyword Args:
_check_type (bool): if True, values for parameters in openapi_types
@ -144,7 +145,7 @@ class ArrayTest(ModelNormal):
_visited_composed_classes = (Animal,)
array_of_string ([str]): [optional] # noqa: E501
array_array_of_integer ([[int]]): [optional] # noqa: E501
array_array_of_model ([[read_only_first.ReadOnlyFirst]]): [optional] # noqa: E501
array_array_of_model ([[ReadOnlyFirst]]): [optional] # noqa: E501
"""
_check_type = kwargs.pop('_check_type', True)

Some files were not shown because too many files have changed in this diff Show More