From 3758aad225626c059030c92e6deab38394a690ce Mon Sep 17 00:00:00 2001 From: William Cheng Date: Tue, 8 May 2018 10:16:25 +0800 Subject: [PATCH] Update Python flask default value (#361) * update python flask default value * update python flask samples --- .../PythonFlaskConnexionServerCodegen.java | 12 +- .../flaskConnexion/base_model_.mustache | 6 +- .../resources/flaskConnexion/encoder.mustache | 2 +- .../resources/flaskConnexion/model.mustache | 4 +- .../resources/flaskConnexion/util.mustache | 4 +- .../flaskConnexion-python2/.dockerignore | 2 +- .../.openapi-generator/VERSION | 2 +- .../flaskConnexion-python2/Dockerfile | 2 +- .../petstore/flaskConnexion-python2/README.md | 18 +- .../flaskConnexion-python2/git_push.sh | 2 +- .../__init__.py | 0 .../__main__.py | 6 +- .../controllers/__init__.py | 0 .../controllers/pet_controller.py | 6 +- .../controllers/store_controller.py | 4 +- .../controllers/user_controller.py | 4 +- .../openapi_server}/encoder.py | 4 +- .../openapi_server/models/__init__.py | 11 + .../models/api_response.py | 10 +- .../models/base_model_.py | 8 +- .../models/category.py | 10 +- .../models/order.py | 10 +- .../models/pet.py | 14 +- .../models/tag.py | 10 +- .../models/user.py | 10 +- .../openapi_server}/openapi/openapi.yaml | 99 ++- .../openapi_server}/test/__init__.py | 2 +- .../test/test_pet_controller.py | 6 +- .../test/test_store_controller.py | 6 +- .../test/test_user_controller.py | 16 +- .../openapi_server}/util.py | 4 +- .../petstore/flaskConnexion-python2/setup.py | 14 +- .../swagger_server/models/__init__.py | 11 - .../swagger_server/swagger/swagger.yaml | 775 ------------------ .../petstore/flaskConnexion/.dockerignore | 2 +- .../server/petstore/flaskConnexion/Dockerfile | 2 +- .../server/petstore/flaskConnexion/README.md | 16 +- .../petstore/flaskConnexion/git_push.sh | 2 +- .../__init__.py | 0 .../__main__.py | 4 +- .../controllers/__init__.py | 0 .../controllers/pet_controller.py | 52 +- .../controllers/store_controller.py | 24 +- .../controllers/user_controller.py | 38 +- .../openapi_server}/encoder.py | 4 +- .../openapi_server/models/__init__.py | 11 + .../models/api_response.py | 10 +- .../models/base_model_.py | 8 +- .../models/category.py | 10 +- .../models/order.py | 10 +- .../models/pet.py | 14 +- .../models/tag.py | 10 +- .../models/user.py | 10 +- .../openapi_server/openapi/openapi.yaml | 769 +++++++++++++++++ .../openapi_server}/test/__init__.py | 6 +- .../test/test_pet_controller.py | 24 +- .../test/test_store_controller.py | 12 +- .../test/test_user_controller.py | 20 +- .../openapi_server}/util.py | 4 +- .../server/petstore/flaskConnexion/setup.py | 12 +- .../swagger_server/models/__init__.py | 11 - 61 files changed, 1100 insertions(+), 1079 deletions(-) rename samples/server/petstore/flaskConnexion-python2/{swagger_server => openapi_server}/__init__.py (100%) rename samples/server/petstore/flaskConnexion-python2/{swagger_server => openapi_server}/__main__.py (51%) rename samples/server/petstore/flaskConnexion-python2/{swagger_server => openapi_server}/controllers/__init__.py (100%) rename samples/server/petstore/{flaskConnexion/swagger_server => flaskConnexion-python2/openapi_server}/controllers/pet_controller.py (94%) rename samples/server/petstore/{flaskConnexion/swagger_server => flaskConnexion-python2/openapi_server}/controllers/store_controller.py (93%) rename samples/server/petstore/{flaskConnexion/swagger_server => flaskConnexion-python2/openapi_server}/controllers/user_controller.py (96%) rename samples/server/petstore/{flaskConnexion/swagger_server => flaskConnexion-python2/openapi_server}/encoder.py (81%) create mode 100644 samples/server/petstore/flaskConnexion-python2/openapi_server/models/__init__.py rename samples/server/petstore/flaskConnexion-python2/{swagger_server => openapi_server}/models/api_response.py (90%) rename samples/server/petstore/flaskConnexion-python2/{swagger_server => openapi_server}/models/base_model_.py (90%) rename samples/server/petstore/flaskConnexion-python2/{swagger_server => openapi_server}/models/category.py (86%) rename samples/server/petstore/flaskConnexion-python2/{swagger_server => openapi_server}/models/order.py (94%) rename samples/server/petstore/flaskConnexion-python2/{swagger_server => openapi_server}/models/pet.py (92%) rename samples/server/petstore/flaskConnexion-python2/{swagger_server => openapi_server}/models/tag.py (86%) rename samples/server/petstore/flaskConnexion-python2/{swagger_server => openapi_server}/models/user.py (95%) rename samples/server/petstore/{flaskConnexion/swagger_server => flaskConnexion-python2/openapi_server}/openapi/openapi.yaml (88%) rename samples/server/petstore/{flaskConnexion/swagger_server => flaskConnexion-python2/openapi_server}/test/__init__.py (88%) rename samples/server/petstore/{flaskConnexion/swagger_server => flaskConnexion-python2/openapi_server}/test/test_pet_controller.py (95%) rename samples/server/petstore/{flaskConnexion/swagger_server => flaskConnexion-python2/openapi_server}/test/test_store_controller.py (91%) rename samples/server/petstore/{flaskConnexion/swagger_server => flaskConnexion-python2/openapi_server}/test/test_user_controller.py (91%) rename samples/server/petstore/{flaskConnexion/swagger_server => flaskConnexion-python2/openapi_server}/util.py (97%) delete mode 100644 samples/server/petstore/flaskConnexion-python2/swagger_server/models/__init__.py delete mode 100644 samples/server/petstore/flaskConnexion-python2/swagger_server/swagger/swagger.yaml rename samples/server/petstore/flaskConnexion/{swagger_server => openapi_server}/__init__.py (100%) rename samples/server/petstore/flaskConnexion/{swagger_server => openapi_server}/__main__.py (70%) rename samples/server/petstore/flaskConnexion/{swagger_server => openapi_server}/controllers/__init__.py (100%) rename samples/server/petstore/{flaskConnexion-python2/swagger_server => flaskConnexion/openapi_server}/controllers/pet_controller.py (57%) rename samples/server/petstore/{flaskConnexion-python2/swagger_server => flaskConnexion/openapi_server}/controllers/store_controller.py (60%) rename samples/server/petstore/{flaskConnexion-python2/swagger_server => flaskConnexion/openapi_server}/controllers/user_controller.py (68%) rename samples/server/petstore/{flaskConnexion-python2/swagger_server => flaskConnexion/openapi_server}/encoder.py (81%) create mode 100644 samples/server/petstore/flaskConnexion/openapi_server/models/__init__.py rename samples/server/petstore/flaskConnexion/{swagger_server => openapi_server}/models/api_response.py (90%) rename samples/server/petstore/flaskConnexion/{swagger_server => openapi_server}/models/base_model_.py (91%) rename samples/server/petstore/flaskConnexion/{swagger_server => openapi_server}/models/category.py (86%) rename samples/server/petstore/flaskConnexion/{swagger_server => openapi_server}/models/order.py (94%) rename samples/server/petstore/flaskConnexion/{swagger_server => openapi_server}/models/pet.py (92%) rename samples/server/petstore/flaskConnexion/{swagger_server => openapi_server}/models/tag.py (86%) rename samples/server/petstore/flaskConnexion/{swagger_server => openapi_server}/models/user.py (95%) create mode 100644 samples/server/petstore/flaskConnexion/openapi_server/openapi/openapi.yaml rename samples/server/petstore/{flaskConnexion-python2/swagger_server => flaskConnexion/openapi_server}/test/__init__.py (62%) rename samples/server/petstore/{flaskConnexion-python2/swagger_server => flaskConnexion/openapi_server}/test/test_pet_controller.py (85%) rename samples/server/petstore/{flaskConnexion-python2/swagger_server => flaskConnexion/openapi_server}/test/test_store_controller.py (83%) rename samples/server/petstore/{flaskConnexion-python2/swagger_server => flaskConnexion/openapi_server}/test/test_user_controller.py (91%) rename samples/server/petstore/{flaskConnexion-python2/swagger_server => flaskConnexion/openapi_server}/util.py (97%) delete mode 100644 samples/server/petstore/flaskConnexion/swagger_server/models/__init__.py diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PythonFlaskConnexionServerCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PythonFlaskConnexionServerCodegen.java index a751e3d9c35..a5f9ec33c8a 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PythonFlaskConnexionServerCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PythonFlaskConnexionServerCodegen.java @@ -140,7 +140,7 @@ public class PythonFlaskConnexionServerCodegen extends DefaultCodegen implements regexModifiers.put('x', "VERBOSE"); cliOptions.add(new CliOption(CodegenConstants.PACKAGE_NAME, "python package name (convention: snake_case).") - .defaultValue("swagger_server")); + .defaultValue("openapi_server")); cliOptions.add(new CliOption(CodegenConstants.PACKAGE_VERSION, "python package version.") .defaultValue("1.0.0")); cliOptions.add(new CliOption(CONTROLLER_PACKAGE, "controller package"). @@ -161,7 +161,7 @@ public class PythonFlaskConnexionServerCodegen extends DefaultCodegen implements if (additionalProperties.containsKey(CodegenConstants.PACKAGE_NAME)) { setPackageName((String) additionalProperties.get(CodegenConstants.PACKAGE_NAME)); } else { - setPackageName("swagger_server"); + setPackageName("openapi_server"); additionalProperties.put(CodegenConstants.PACKAGE_NAME, this.packageName); } if (additionalProperties.containsKey(CodegenConstants.PACKAGE_VERSION)) { @@ -315,7 +315,7 @@ public class PythonFlaskConnexionServerCodegen extends DefaultCodegen implements @Override public void preprocessOpenAPI(OpenAPI openAPI) { - // need vendor extensions for x-swagger-router-controller + // need vendor extensions for x-openapi-router-controller Map paths = openAPI.getPaths(); if (paths != null) { for (String pathname : paths.keySet()) { @@ -333,9 +333,9 @@ public class PythonFlaskConnexionServerCodegen extends DefaultCodegen implements operationId = getOrGenerateOperationId(operation, pathname, method.toString()); } operation.setOperationId(toOperationId(operationId)); - if (operation.getExtensions().get("x-swagger-router-controller") == null) { + if (operation.getExtensions().get("x-openapi-router-controller") == null) { operation.addExtension( - "x-swagger-router-controller", + "x-openapi-router-controller", controllerPackage + "." + toApiFilename(tag) ); } @@ -489,7 +489,7 @@ public class PythonFlaskConnexionServerCodegen extends DefaultCodegen implements /** * Return the default value of the property * - * @param p Swagger property object + * @param p OpenAPI property object * @return string presentation of the default value of the property */ @Override diff --git a/modules/openapi-generator/src/main/resources/flaskConnexion/base_model_.mustache b/modules/openapi-generator/src/main/resources/flaskConnexion/base_model_.mustache index 54517a06d53..e41e51e2a25 100644 --- a/modules/openapi-generator/src/main/resources/flaskConnexion/base_model_.mustache +++ b/modules/openapi-generator/src/main/resources/flaskConnexion/base_model_.mustache @@ -13,9 +13,9 @@ T = typing.TypeVar('T') class Model(object): - # swaggerTypes: The key is attribute name and the + # openapiTypes: The key is attribute name and the # value is attribute type. - swagger_types = {} + openapi_types = {} # attributeMap: The key is attribute name and the # value is json key in definition. @@ -33,7 +33,7 @@ class Model(object): """ result = {} - for attr, _ in six.iteritems(self.swagger_types): + for attr, _ in six.iteritems(self.openapi_types): value = getattr(self, attr) if isinstance(value, list): result[attr] = list(map( diff --git a/modules/openapi-generator/src/main/resources/flaskConnexion/encoder.mustache b/modules/openapi-generator/src/main/resources/flaskConnexion/encoder.mustache index e303a0e41a7..c2c402be3da 100644 --- a/modules/openapi-generator/src/main/resources/flaskConnexion/encoder.mustache +++ b/modules/openapi-generator/src/main/resources/flaskConnexion/encoder.mustache @@ -10,7 +10,7 @@ class JSONEncoder(FlaskJSONEncoder): def default(self, o): if isinstance(o, Model): dikt = {} - for attr, _ in six.iteritems(o.swagger_types): + for attr, _ in six.iteritems(o.openapi_types): value = getattr(o, attr) if value is None and not self.include_nulls: continue diff --git a/modules/openapi-generator/src/main/resources/flaskConnexion/model.mustache b/modules/openapi-generator/src/main/resources/flaskConnexion/model.mustache index ab167dcbab3..4f8eba4fc77 100644 --- a/modules/openapi-generator/src/main/resources/flaskConnexion/model.mustache +++ b/modules/openapi-generator/src/main/resources/flaskConnexion/model.mustache @@ -28,14 +28,14 @@ class {{classname}}(Model): {{/enumVars}}{{/allowableValues}} def __init__(self{{#vars}}, {{name}}{{^supportPython2}}: {{datatype}}{{/supportPython2}}={{#defaultValue}}{{{defaultValue}}}{{/defaultValue}}{{^defaultValue}}None{{/defaultValue}}{{/vars}}): # noqa: E501 - """{{classname}} - a model defined in Swagger + """{{classname}} - a model defined in OpenAPI {{#vars}} :param {{name}}: The {{name}} of this {{classname}}. # noqa: E501 :type {{name}}: {{datatype}} {{/vars}} """ - self.swagger_types = { + self.openapi_types = { {{#vars}} '{{name}}': {{{datatype}}}{{#hasMore}},{{/hasMore}} {{/vars}} diff --git a/modules/openapi-generator/src/main/resources/flaskConnexion/util.mustache b/modules/openapi-generator/src/main/resources/flaskConnexion/util.mustache index 527d1424c3d..4321570d5a0 100644 --- a/modules/openapi-generator/src/main/resources/flaskConnexion/util.mustache +++ b/modules/openapi-generator/src/main/resources/flaskConnexion/util.mustache @@ -100,10 +100,10 @@ def deserialize_model(data, klass): """ instance = klass() - if not instance.swagger_types: + if not instance.openapi_types: return data - for attr, attr_type in six.iteritems(instance.swagger_types): + for attr, attr_type in six.iteritems(instance.openapi_types): if data is not None \ and instance.attribute_map[attr] in data \ and isinstance(data, (list, dict)): diff --git a/samples/server/petstore/flaskConnexion-python2/.dockerignore b/samples/server/petstore/flaskConnexion-python2/.dockerignore index cdd823e64e7..f9619601908 100644 --- a/samples/server/petstore/flaskConnexion-python2/.dockerignore +++ b/samples/server/petstore/flaskConnexion-python2/.dockerignore @@ -1,5 +1,5 @@ .travis.yaml -.swagger-codegen-ignore +.openapi-generator-ignore README.md tox.ini git_push.sh diff --git a/samples/server/petstore/flaskConnexion-python2/.openapi-generator/VERSION b/samples/server/petstore/flaskConnexion-python2/.openapi-generator/VERSION index f9f7450d135..096bf47efe3 100644 --- a/samples/server/petstore/flaskConnexion-python2/.openapi-generator/VERSION +++ b/samples/server/petstore/flaskConnexion-python2/.openapi-generator/VERSION @@ -1 +1 @@ -2.3.0-SNAPSHOT \ No newline at end of file +3.0.0-SNAPSHOT \ No newline at end of file diff --git a/samples/server/petstore/flaskConnexion-python2/Dockerfile b/samples/server/petstore/flaskConnexion-python2/Dockerfile index 0ac164fe3fb..d51d2b7a856 100644 --- a/samples/server/petstore/flaskConnexion-python2/Dockerfile +++ b/samples/server/petstore/flaskConnexion-python2/Dockerfile @@ -13,4 +13,4 @@ EXPOSE 8080 ENTRYPOINT ["python"] -CMD ["-m", "swagger_server"] \ No newline at end of file +CMD ["-m", "openapi_server"] \ No newline at end of file diff --git a/samples/server/petstore/flaskConnexion-python2/README.md b/samples/server/petstore/flaskConnexion-python2/README.md index 99b70d1524b..ceebd18c340 100644 --- a/samples/server/petstore/flaskConnexion-python2/README.md +++ b/samples/server/petstore/flaskConnexion-python2/README.md @@ -1,9 +1,9 @@ -# Swagger generated server +# OpenAPI generated server ## Overview -This server was generated by the [swagger-codegen](https://github.com/swagger-api/swagger-codegen) project. By using the -[OpenAPI-Spec](https://github.com/swagger-api/swagger-core/wiki) from a remote server, you can easily generate a server stub. This -is an example of building a swagger-enabled Flask server. +This server was generated by the [OpenAPI Generator](https://openapi-generator.tech) project. By using the +[OpenAPI-Spec](https://openapis.org) from a remote server, you can easily generate a server stub. This +is an example of building a OpenAPI-enabled Flask server. This example uses the [Connexion](https://github.com/zalando/connexion) library on top of Flask. @@ -15,7 +15,7 @@ To run the server, please execute the following from the root directory: ``` pip install -r requirements.txt -python -m swagger_server +python -m openapi_server ``` and open your browser to here: @@ -24,10 +24,10 @@ and open your browser to here: http://localhost:8080/v2/ui/ ``` -Your Swagger definition lives here: +Your OpenAPI definition lives here: ``` -http://localhost:8080/v2/swagger.json +http://localhost:8080/v2/openapi.json ``` To launch the integration tests, use tox: @@ -42,8 +42,8 @@ To run the server on a Docker container, please execute the following from the r ```bash # building the image -docker build -t swagger_server . +docker build -t openapi_server . # starting up a container -docker run -p 8080:8080 swagger_server +docker run -p 8080:8080 openapi_server ``` \ No newline at end of file diff --git a/samples/server/petstore/flaskConnexion-python2/git_push.sh b/samples/server/petstore/flaskConnexion-python2/git_push.sh index 160f6f21399..20057f67ade 100644 --- a/samples/server/petstore/flaskConnexion-python2/git_push.sh +++ b/samples/server/petstore/flaskConnexion-python2/git_push.sh @@ -1,7 +1,7 @@ #!/bin/sh # ref: https://help.github.com/articles/adding-an-existing-project-to-github-using-the-command-line/ # -# Usage example: /bin/sh ./git_push.sh wing328 swagger-petstore-perl "minor update" +# Usage example: /bin/sh ./git_push.sh wing328 openapi-pestore-perl "minor update" git_user_id=$1 git_repo_id=$2 diff --git a/samples/server/petstore/flaskConnexion-python2/swagger_server/__init__.py b/samples/server/petstore/flaskConnexion-python2/openapi_server/__init__.py similarity index 100% rename from samples/server/petstore/flaskConnexion-python2/swagger_server/__init__.py rename to samples/server/petstore/flaskConnexion-python2/openapi_server/__init__.py diff --git a/samples/server/petstore/flaskConnexion-python2/swagger_server/__main__.py b/samples/server/petstore/flaskConnexion-python2/openapi_server/__main__.py similarity index 51% rename from samples/server/petstore/flaskConnexion-python2/swagger_server/__main__.py rename to samples/server/petstore/flaskConnexion-python2/openapi_server/__main__.py index 9f4473760ee..22778377da1 100644 --- a/samples/server/petstore/flaskConnexion-python2/swagger_server/__main__.py +++ b/samples/server/petstore/flaskConnexion-python2/openapi_server/__main__.py @@ -2,13 +2,13 @@ import connexion -from swagger_server import encoder +from openapi_server import encoder def main(): - app = connexion.App(__name__, specification_dir='./swagger/') + app = connexion.App(__name__, specification_dir='./openapi/') app.app.json_encoder = encoder.JSONEncoder - app.add_api('swagger.yaml', arguments={'title': 'Swagger Petstore'}) + app.add_api('openapi.yaml', arguments={'title': 'OpenAPI Petstore'}) app.run(port=8080) diff --git a/samples/server/petstore/flaskConnexion-python2/swagger_server/controllers/__init__.py b/samples/server/petstore/flaskConnexion-python2/openapi_server/controllers/__init__.py similarity index 100% rename from samples/server/petstore/flaskConnexion-python2/swagger_server/controllers/__init__.py rename to samples/server/petstore/flaskConnexion-python2/openapi_server/controllers/__init__.py diff --git a/samples/server/petstore/flaskConnexion/swagger_server/controllers/pet_controller.py b/samples/server/petstore/flaskConnexion-python2/openapi_server/controllers/pet_controller.py similarity index 94% rename from samples/server/petstore/flaskConnexion/swagger_server/controllers/pet_controller.py rename to samples/server/petstore/flaskConnexion-python2/openapi_server/controllers/pet_controller.py index adedc37e1c8..125820f0054 100644 --- a/samples/server/petstore/flaskConnexion/swagger_server/controllers/pet_controller.py +++ b/samples/server/petstore/flaskConnexion-python2/openapi_server/controllers/pet_controller.py @@ -1,9 +1,9 @@ import connexion import six -from swagger_server.models.api_response import ApiResponse # noqa: E501 -from swagger_server.models.pet import Pet # noqa: E501 -from swagger_server import util +from openapi_server.models.api_response import ApiResponse # noqa: E501 +from openapi_server.models.pet import Pet # noqa: E501 +from openapi_server import util def add_pet(pet): # noqa: E501 diff --git a/samples/server/petstore/flaskConnexion/swagger_server/controllers/store_controller.py b/samples/server/petstore/flaskConnexion-python2/openapi_server/controllers/store_controller.py similarity index 93% rename from samples/server/petstore/flaskConnexion/swagger_server/controllers/store_controller.py rename to samples/server/petstore/flaskConnexion-python2/openapi_server/controllers/store_controller.py index 80c005edc0d..3d16d99859e 100644 --- a/samples/server/petstore/flaskConnexion/swagger_server/controllers/store_controller.py +++ b/samples/server/petstore/flaskConnexion-python2/openapi_server/controllers/store_controller.py @@ -1,8 +1,8 @@ import connexion import six -from swagger_server.models.order import Order # noqa: E501 -from swagger_server import util +from openapi_server.models.order import Order # noqa: E501 +from openapi_server import util def delete_order(order_id): # noqa: E501 diff --git a/samples/server/petstore/flaskConnexion/swagger_server/controllers/user_controller.py b/samples/server/petstore/flaskConnexion-python2/openapi_server/controllers/user_controller.py similarity index 96% rename from samples/server/petstore/flaskConnexion/swagger_server/controllers/user_controller.py rename to samples/server/petstore/flaskConnexion-python2/openapi_server/controllers/user_controller.py index 48cddf17a4f..9b970626212 100644 --- a/samples/server/petstore/flaskConnexion/swagger_server/controllers/user_controller.py +++ b/samples/server/petstore/flaskConnexion-python2/openapi_server/controllers/user_controller.py @@ -1,8 +1,8 @@ import connexion import six -from swagger_server.models.user import User # noqa: E501 -from swagger_server import util +from openapi_server.models.user import User # noqa: E501 +from openapi_server import util def create_user(user): # noqa: E501 diff --git a/samples/server/petstore/flaskConnexion/swagger_server/encoder.py b/samples/server/petstore/flaskConnexion-python2/openapi_server/encoder.py similarity index 81% rename from samples/server/petstore/flaskConnexion/swagger_server/encoder.py rename to samples/server/petstore/flaskConnexion-python2/openapi_server/encoder.py index 61ba4721961..3bbef854f3b 100644 --- a/samples/server/petstore/flaskConnexion/swagger_server/encoder.py +++ b/samples/server/petstore/flaskConnexion-python2/openapi_server/encoder.py @@ -1,7 +1,7 @@ from connexion.apps.flask_app import FlaskJSONEncoder import six -from swagger_server.models.base_model_ import Model +from openapi_server.models.base_model_ import Model class JSONEncoder(FlaskJSONEncoder): @@ -10,7 +10,7 @@ class JSONEncoder(FlaskJSONEncoder): def default(self, o): if isinstance(o, Model): dikt = {} - for attr, _ in six.iteritems(o.swagger_types): + for attr, _ in six.iteritems(o.openapi_types): value = getattr(o, attr) if value is None and not self.include_nulls: continue diff --git a/samples/server/petstore/flaskConnexion-python2/openapi_server/models/__init__.py b/samples/server/petstore/flaskConnexion-python2/openapi_server/models/__init__.py new file mode 100644 index 00000000000..962f6f34936 --- /dev/null +++ b/samples/server/petstore/flaskConnexion-python2/openapi_server/models/__init__.py @@ -0,0 +1,11 @@ +# coding: utf-8 + +# flake8: noqa +from __future__ import absolute_import +# import models into model package +from openapi_server.models.api_response import ApiResponse +from openapi_server.models.category import Category +from openapi_server.models.order import Order +from openapi_server.models.pet import Pet +from openapi_server.models.tag import Tag +from openapi_server.models.user import User diff --git a/samples/server/petstore/flaskConnexion-python2/swagger_server/models/api_response.py b/samples/server/petstore/flaskConnexion-python2/openapi_server/models/api_response.py similarity index 90% rename from samples/server/petstore/flaskConnexion-python2/swagger_server/models/api_response.py rename to samples/server/petstore/flaskConnexion-python2/openapi_server/models/api_response.py index 08e4007b9c2..f4f26e834a2 100644 --- a/samples/server/petstore/flaskConnexion-python2/swagger_server/models/api_response.py +++ b/samples/server/petstore/flaskConnexion-python2/openapi_server/models/api_response.py @@ -5,18 +5,18 @@ from datetime import date, datetime # noqa: F401 from typing import List, Dict # noqa: F401 -from swagger_server.models.base_model_ import Model -from swagger_server import util +from openapi_server.models.base_model_ import Model +from openapi_server import util class ApiResponse(Model): - """NOTE: This class is auto generated by the swagger code generator program. + """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). Do not edit the class manually. """ def __init__(self, code=None, type=None, message=None): # noqa: E501 - """ApiResponse - a model defined in Swagger + """ApiResponse - a model defined in OpenAPI :param code: The code of this ApiResponse. # noqa: E501 :type code: int @@ -25,7 +25,7 @@ class ApiResponse(Model): :param message: The message of this ApiResponse. # noqa: E501 :type message: str """ - self.swagger_types = { + self.openapi_types = { 'code': int, 'type': str, 'message': str diff --git a/samples/server/petstore/flaskConnexion-python2/swagger_server/models/base_model_.py b/samples/server/petstore/flaskConnexion-python2/openapi_server/models/base_model_.py similarity index 90% rename from samples/server/petstore/flaskConnexion-python2/swagger_server/models/base_model_.py rename to samples/server/petstore/flaskConnexion-python2/openapi_server/models/base_model_.py index 35296d34ca4..2f7f96c14e4 100644 --- a/samples/server/petstore/flaskConnexion-python2/swagger_server/models/base_model_.py +++ b/samples/server/petstore/flaskConnexion-python2/openapi_server/models/base_model_.py @@ -2,13 +2,13 @@ import pprint import six -from swagger_server import util +from openapi_server import util class Model(object): - # swaggerTypes: The key is attribute name and the + # openapiTypes: The key is attribute name and the # value is attribute type. - swagger_types = {} + openapi_types = {} # attributeMap: The key is attribute name and the # value is json key in definition. @@ -26,7 +26,7 @@ class Model(object): """ result = {} - for attr, _ in six.iteritems(self.swagger_types): + for attr, _ in six.iteritems(self.openapi_types): value = getattr(self, attr) if isinstance(value, list): result[attr] = list(map( diff --git a/samples/server/petstore/flaskConnexion-python2/swagger_server/models/category.py b/samples/server/petstore/flaskConnexion-python2/openapi_server/models/category.py similarity index 86% rename from samples/server/petstore/flaskConnexion-python2/swagger_server/models/category.py rename to samples/server/petstore/flaskConnexion-python2/openapi_server/models/category.py index 34aa53d3ce0..fc2b224078a 100644 --- a/samples/server/petstore/flaskConnexion-python2/swagger_server/models/category.py +++ b/samples/server/petstore/flaskConnexion-python2/openapi_server/models/category.py @@ -5,25 +5,25 @@ from datetime import date, datetime # noqa: F401 from typing import List, Dict # noqa: F401 -from swagger_server.models.base_model_ import Model -from swagger_server import util +from openapi_server.models.base_model_ import Model +from openapi_server import util class Category(Model): - """NOTE: This class is auto generated by the swagger code generator program. + """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). Do not edit the class manually. """ def __init__(self, id=None, name=None): # noqa: E501 - """Category - a model defined in Swagger + """Category - a model defined in OpenAPI :param id: The id of this Category. # noqa: E501 :type id: long :param name: The name of this Category. # noqa: E501 :type name: str """ - self.swagger_types = { + self.openapi_types = { 'id': long, 'name': str } diff --git a/samples/server/petstore/flaskConnexion-python2/swagger_server/models/order.py b/samples/server/petstore/flaskConnexion-python2/openapi_server/models/order.py similarity index 94% rename from samples/server/petstore/flaskConnexion-python2/swagger_server/models/order.py rename to samples/server/petstore/flaskConnexion-python2/openapi_server/models/order.py index 7b7f5f0645f..02ea8c4fd72 100644 --- a/samples/server/petstore/flaskConnexion-python2/swagger_server/models/order.py +++ b/samples/server/petstore/flaskConnexion-python2/openapi_server/models/order.py @@ -5,18 +5,18 @@ from datetime import date, datetime # noqa: F401 from typing import List, Dict # noqa: F401 -from swagger_server.models.base_model_ import Model -from swagger_server import util +from openapi_server.models.base_model_ import Model +from openapi_server import util class Order(Model): - """NOTE: This class is auto generated by the swagger code generator program. + """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). Do not edit the class manually. """ def __init__(self, id=None, pet_id=None, quantity=None, ship_date=None, status=None, complete=False): # noqa: E501 - """Order - a model defined in Swagger + """Order - a model defined in OpenAPI :param id: The id of this Order. # noqa: E501 :type id: long @@ -31,7 +31,7 @@ class Order(Model): :param complete: The complete of this Order. # noqa: E501 :type complete: bool """ - self.swagger_types = { + self.openapi_types = { 'id': long, 'pet_id': long, 'quantity': int, diff --git a/samples/server/petstore/flaskConnexion-python2/swagger_server/models/pet.py b/samples/server/petstore/flaskConnexion-python2/openapi_server/models/pet.py similarity index 92% rename from samples/server/petstore/flaskConnexion-python2/swagger_server/models/pet.py rename to samples/server/petstore/flaskConnexion-python2/openapi_server/models/pet.py index 0f8e96dcd56..411e9e12f52 100644 --- a/samples/server/petstore/flaskConnexion-python2/swagger_server/models/pet.py +++ b/samples/server/petstore/flaskConnexion-python2/openapi_server/models/pet.py @@ -5,20 +5,20 @@ from datetime import date, datetime # noqa: F401 from typing import List, Dict # noqa: F401 -from swagger_server.models.base_model_ import Model -from swagger_server.models.category import Category # noqa: F401,E501 -from swagger_server.models.tag import Tag # noqa: F401,E501 -from swagger_server import util +from openapi_server.models.base_model_ import Model +from openapi_server.models.category import Category # noqa: F401,E501 +from openapi_server.models.tag import Tag # noqa: F401,E501 +from openapi_server import util class Pet(Model): - """NOTE: This class is auto generated by the swagger code generator program. + """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). Do not edit the class manually. """ def __init__(self, id=None, category=None, name=None, photo_urls=None, tags=None, status=None): # noqa: E501 - """Pet - a model defined in Swagger + """Pet - a model defined in OpenAPI :param id: The id of this Pet. # noqa: E501 :type id: long @@ -33,7 +33,7 @@ class Pet(Model): :param status: The status of this Pet. # noqa: E501 :type status: str """ - self.swagger_types = { + self.openapi_types = { 'id': long, 'category': Category, 'name': str, diff --git a/samples/server/petstore/flaskConnexion-python2/swagger_server/models/tag.py b/samples/server/petstore/flaskConnexion-python2/openapi_server/models/tag.py similarity index 86% rename from samples/server/petstore/flaskConnexion-python2/swagger_server/models/tag.py rename to samples/server/petstore/flaskConnexion-python2/openapi_server/models/tag.py index d26d435242e..24a262951ed 100644 --- a/samples/server/petstore/flaskConnexion-python2/swagger_server/models/tag.py +++ b/samples/server/petstore/flaskConnexion-python2/openapi_server/models/tag.py @@ -5,25 +5,25 @@ from datetime import date, datetime # noqa: F401 from typing import List, Dict # noqa: F401 -from swagger_server.models.base_model_ import Model -from swagger_server import util +from openapi_server.models.base_model_ import Model +from openapi_server import util class Tag(Model): - """NOTE: This class is auto generated by the swagger code generator program. + """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). Do not edit the class manually. """ def __init__(self, id=None, name=None): # noqa: E501 - """Tag - a model defined in Swagger + """Tag - a model defined in OpenAPI :param id: The id of this Tag. # noqa: E501 :type id: long :param name: The name of this Tag. # noqa: E501 :type name: str """ - self.swagger_types = { + self.openapi_types = { 'id': long, 'name': str } diff --git a/samples/server/petstore/flaskConnexion-python2/swagger_server/models/user.py b/samples/server/petstore/flaskConnexion-python2/openapi_server/models/user.py similarity index 95% rename from samples/server/petstore/flaskConnexion-python2/swagger_server/models/user.py rename to samples/server/petstore/flaskConnexion-python2/openapi_server/models/user.py index 84956ff2663..3807bfe9978 100644 --- a/samples/server/petstore/flaskConnexion-python2/swagger_server/models/user.py +++ b/samples/server/petstore/flaskConnexion-python2/openapi_server/models/user.py @@ -5,18 +5,18 @@ from datetime import date, datetime # noqa: F401 from typing import List, Dict # noqa: F401 -from swagger_server.models.base_model_ import Model -from swagger_server import util +from openapi_server.models.base_model_ import Model +from openapi_server import util class User(Model): - """NOTE: This class is auto generated by the swagger code generator program. + """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). Do not edit the class manually. """ def __init__(self, id=None, username=None, first_name=None, last_name=None, email=None, password=None, phone=None, user_status=None): # noqa: E501 - """User - a model defined in Swagger + """User - a model defined in OpenAPI :param id: The id of this User. # noqa: E501 :type id: long @@ -35,7 +35,7 @@ class User(Model): :param user_status: The user_status of this User. # noqa: E501 :type user_status: int """ - self.swagger_types = { + self.openapi_types = { 'id': long, 'username': str, 'first_name': str, diff --git a/samples/server/petstore/flaskConnexion/swagger_server/openapi/openapi.yaml b/samples/server/petstore/flaskConnexion-python2/openapi_server/openapi/openapi.yaml similarity index 88% rename from samples/server/petstore/flaskConnexion/swagger_server/openapi/openapi.yaml rename to samples/server/petstore/flaskConnexion-python2/openapi_server/openapi/openapi.yaml index 89e8be27058..20174ed3ca1 100644 --- a/samples/server/petstore/flaskConnexion/swagger_server/openapi/openapi.yaml +++ b/samples/server/petstore/flaskConnexion-python2/openapi_server/openapi/openapi.yaml @@ -1,34 +1,20 @@ openapi: 3.0.1 info: - title: Swagger Petstore - description: 'This is a sample server Petstore server. You can find out more about - Swagger at [http://swagger.io](http://swagger.io) or on [irc.freenode.net, #swagger](http://swagger.io/irc/). For - this sample, you can use the api key `special-key` to test the authorization filters.' - termsOfService: http://swagger.io/terms/ - contact: - email: apiteam@swagger.io + title: OpenAPI Petstore + description: This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. license: name: Apache-2.0 url: http://www.apache.org/licenses/LICENSE-2.0.html version: 1.0.0 -externalDocs: - description: Find out more about Swagger - url: http://swagger.io servers: - url: http://petstore.swagger.io/v2 tags: - name: pet description: Everything about your Pets - externalDocs: - description: Find out more - url: http://swagger.io - name: store description: Access to Petstore orders - name: user description: Operations about user - externalDocs: - description: Find out more about our store - url: http://swagger.io paths: /pet: put: @@ -60,7 +46,7 @@ paths: - petstore_auth: - write:pets - read:pets - x-swagger-router-controller: swagger_server.controllers.pet_controller + x-openapi-router-controller: openapi_server.controllers.pet_controller post: tags: - pet @@ -84,7 +70,7 @@ paths: - petstore_auth: - write:pets - read:pets - x-swagger-router-controller: swagger_server.controllers.pet_controller + x-openapi-router-controller: openapi_server.controllers.pet_controller /pet/findByStatus: get: tags: @@ -128,7 +114,7 @@ paths: - petstore_auth: - write:pets - read:pets - x-swagger-router-controller: swagger_server.controllers.pet_controller + x-openapi-router-controller: openapi_server.controllers.pet_controller /pet/findByTags: get: tags: @@ -168,7 +154,7 @@ paths: - petstore_auth: - write:pets - read:pets - x-swagger-router-controller: swagger_server.controllers.pet_controller + x-openapi-router-controller: openapi_server.controllers.pet_controller /pet/{petId}: get: tags: @@ -202,7 +188,7 @@ paths: content: {} security: - api_key: [] - x-swagger-router-controller: swagger_server.controllers.pet_controller + x-openapi-router-controller: openapi_server.controllers.pet_controller post: tags: - pet @@ -235,7 +221,7 @@ paths: - petstore_auth: - write:pets - read:pets - x-swagger-router-controller: swagger_server.controllers.pet_controller + x-openapi-router-controller: openapi_server.controllers.pet_controller delete: tags: - pet @@ -261,7 +247,7 @@ paths: - petstore_auth: - write:pets - read:pets - x-swagger-router-controller: swagger_server.controllers.pet_controller + x-openapi-router-controller: openapi_server.controllers.pet_controller /pet/{petId}/uploadImage: post: tags: @@ -299,7 +285,7 @@ paths: - petstore_auth: - write:pets - read:pets - x-swagger-router-controller: swagger_server.controllers.pet_controller + x-openapi-router-controller: openapi_server.controllers.pet_controller /store/inventory: get: tags: @@ -319,7 +305,7 @@ paths: format: int32 security: - api_key: [] - x-swagger-router-controller: swagger_server.controllers.store_controller + x-openapi-router-controller: openapi_server.controllers.store_controller /store/order: post: tags: @@ -346,7 +332,7 @@ paths: 400: description: Invalid Order content: {} - x-swagger-router-controller: swagger_server.controllers.store_controller + x-openapi-router-controller: openapi_server.controllers.store_controller /store/order/{orderId}: get: tags: @@ -380,7 +366,7 @@ paths: 404: description: Order not found content: {} - x-swagger-router-controller: swagger_server.controllers.store_controller + x-openapi-router-controller: openapi_server.controllers.store_controller delete: tags: - store @@ -401,7 +387,7 @@ paths: 404: description: Order not found content: {} - x-swagger-router-controller: swagger_server.controllers.store_controller + x-openapi-router-controller: openapi_server.controllers.store_controller /user: post: tags: @@ -420,7 +406,7 @@ paths: default: description: successful operation content: {} - x-swagger-router-controller: swagger_server.controllers.user_controller + x-openapi-router-controller: openapi_server.controllers.user_controller /user/createWithArray: post: tags: @@ -440,7 +426,7 @@ paths: default: description: successful operation content: {} - x-swagger-router-controller: swagger_server.controllers.user_controller + x-openapi-router-controller: openapi_server.controllers.user_controller /user/createWithList: post: tags: @@ -460,7 +446,7 @@ paths: default: description: successful operation content: {} - x-swagger-router-controller: swagger_server.controllers.user_controller + x-openapi-router-controller: openapi_server.controllers.user_controller /user/login: get: tags: @@ -504,7 +490,7 @@ paths: 400: description: Invalid username/password supplied content: {} - x-swagger-router-controller: swagger_server.controllers.user_controller + x-openapi-router-controller: openapi_server.controllers.user_controller /user/logout: get: tags: @@ -515,7 +501,7 @@ paths: default: description: successful operation content: {} - x-swagger-router-controller: swagger_server.controllers.user_controller + x-openapi-router-controller: openapi_server.controllers.user_controller /user/{username}: get: tags: @@ -545,7 +531,7 @@ paths: 404: description: User not found content: {} - x-swagger-router-controller: swagger_server.controllers.user_controller + x-openapi-router-controller: openapi_server.controllers.user_controller put: tags: - user @@ -573,7 +559,7 @@ paths: 404: description: User not found content: {} - x-swagger-router-controller: swagger_server.controllers.user_controller + x-openapi-router-controller: openapi_server.controllers.user_controller delete: tags: - user @@ -594,7 +580,7 @@ paths: 404: description: User not found content: {} - x-swagger-router-controller: swagger_server.controllers.user_controller + x-openapi-router-controller: openapi_server.controllers.user_controller components: schemas: Order: @@ -624,6 +610,13 @@ components: type: boolean default: false description: An order for a pets from the pet store + example: + petId: 6 + quantity: 1 + id: 0 + shipDate: 2000-01-23T04:56:07.000+00:00 + complete: false + status: placed xml: name: Order Category: @@ -636,6 +629,9 @@ components: name: type: string description: A category for a pet + example: + name: name + id: 6 xml: name: Category User: @@ -662,6 +658,15 @@ components: description: User Status format: int32 description: A User who is purchasing from the pet store + example: + firstName: firstName + lastName: lastName + password: password + userStatus: 6 + phone: phone + id: 0 + email: email + username: username xml: name: User Tag: @@ -674,6 +679,9 @@ components: name: type: string description: A tag for a pet + example: + name: name + id: 1 xml: name: Tag Pet: @@ -713,6 +721,21 @@ components: - pending - sold description: A pet for sale in the pet store + example: + photoUrls: + - photoUrls + - photoUrls + name: doggie + id: 0 + category: + name: name + id: 6 + tags: + - name: name + id: 1 + - name: name + id: 1 + status: available xml: name: Pet ApiResponse: @@ -727,6 +750,10 @@ components: message: type: string description: Describes the result of uploading an image resource + example: + code: 0 + type: type + message: message securitySchemes: petstore_auth: type: oauth2 diff --git a/samples/server/petstore/flaskConnexion/swagger_server/test/__init__.py b/samples/server/petstore/flaskConnexion-python2/openapi_server/test/__init__.py similarity index 88% rename from samples/server/petstore/flaskConnexion/swagger_server/test/__init__.py rename to samples/server/petstore/flaskConnexion-python2/openapi_server/test/__init__.py index 60caf919dd1..cf6b70fce26 100644 --- a/samples/server/petstore/flaskConnexion/swagger_server/test/__init__.py +++ b/samples/server/petstore/flaskConnexion-python2/openapi_server/test/__init__.py @@ -3,7 +3,7 @@ import logging import connexion from flask_testing import TestCase -from swagger_server.encoder import JSONEncoder +from openapi_server.encoder import JSONEncoder class BaseTestCase(TestCase): diff --git a/samples/server/petstore/flaskConnexion/swagger_server/test/test_pet_controller.py b/samples/server/petstore/flaskConnexion-python2/openapi_server/test/test_pet_controller.py similarity index 95% rename from samples/server/petstore/flaskConnexion/swagger_server/test/test_pet_controller.py rename to samples/server/petstore/flaskConnexion-python2/openapi_server/test/test_pet_controller.py index 48420a9235a..eccd4745921 100644 --- a/samples/server/petstore/flaskConnexion/swagger_server/test/test_pet_controller.py +++ b/samples/server/petstore/flaskConnexion-python2/openapi_server/test/test_pet_controller.py @@ -5,9 +5,9 @@ from __future__ import absolute_import from flask import json from six import BytesIO -from swagger_server.models.api_response import ApiResponse # noqa: E501 -from swagger_server.models.pet import Pet # noqa: E501 -from swagger_server.test import BaseTestCase +from openapi_server.models.api_response import ApiResponse # noqa: E501 +from openapi_server.models.pet import Pet # noqa: E501 +from openapi_server.test import BaseTestCase class TestPetController(BaseTestCase): diff --git a/samples/server/petstore/flaskConnexion/swagger_server/test/test_store_controller.py b/samples/server/petstore/flaskConnexion-python2/openapi_server/test/test_store_controller.py similarity index 91% rename from samples/server/petstore/flaskConnexion/swagger_server/test/test_store_controller.py rename to samples/server/petstore/flaskConnexion-python2/openapi_server/test/test_store_controller.py index 0b51797541c..49d09e3596f 100644 --- a/samples/server/petstore/flaskConnexion/swagger_server/test/test_store_controller.py +++ b/samples/server/petstore/flaskConnexion-python2/openapi_server/test/test_store_controller.py @@ -5,8 +5,8 @@ from __future__ import absolute_import from flask import json from six import BytesIO -from swagger_server.models.order import Order # noqa: E501 -from swagger_server.test import BaseTestCase +from openapi_server.models.order import Order # noqa: E501 +from openapi_server.test import BaseTestCase class TestStoreController(BaseTestCase): @@ -55,7 +55,7 @@ class TestStoreController(BaseTestCase): '/v2/store/order', method='POST', data=json.dumps(order), - content_type='*/*') + content_type='application/json') self.assert200(response, 'Response body is : ' + response.data.decode('utf-8')) diff --git a/samples/server/petstore/flaskConnexion/swagger_server/test/test_user_controller.py b/samples/server/petstore/flaskConnexion-python2/openapi_server/test/test_user_controller.py similarity index 91% rename from samples/server/petstore/flaskConnexion/swagger_server/test/test_user_controller.py rename to samples/server/petstore/flaskConnexion-python2/openapi_server/test/test_user_controller.py index 10696f43607..69a8bc4594a 100644 --- a/samples/server/petstore/flaskConnexion/swagger_server/test/test_user_controller.py +++ b/samples/server/petstore/flaskConnexion-python2/openapi_server/test/test_user_controller.py @@ -5,8 +5,8 @@ from __future__ import absolute_import from flask import json from six import BytesIO -from swagger_server.models.user import User # noqa: E501 -from swagger_server.test import BaseTestCase +from openapi_server.models.user import User # noqa: E501 +from openapi_server.test import BaseTestCase class TestUserController(BaseTestCase): @@ -22,7 +22,7 @@ class TestUserController(BaseTestCase): '/v2/user', method='POST', data=json.dumps(user), - content_type='*/*') + content_type='application/json') self.assert200(response, 'Response body is : ' + response.data.decode('utf-8')) @@ -31,12 +31,12 @@ class TestUserController(BaseTestCase): Creates list of users with given input array """ - user = [User()] + user = None response = self.client.open( '/v2/user/createWithArray', method='POST', data=json.dumps(user), - content_type='*/*') + content_type='application/json') self.assert200(response, 'Response body is : ' + response.data.decode('utf-8')) @@ -45,12 +45,12 @@ class TestUserController(BaseTestCase): Creates list of users with given input array """ - user = [User()] + user = None response = self.client.open( '/v2/user/createWithList', method='POST', data=json.dumps(user), - content_type='*/*') + content_type='application/json') self.assert200(response, 'Response body is : ' + response.data.decode('utf-8')) @@ -111,7 +111,7 @@ class TestUserController(BaseTestCase): '/v2/user/{username}'.format(username='username_example'), method='PUT', data=json.dumps(user), - content_type='*/*') + content_type='application/json') self.assert200(response, 'Response body is : ' + response.data.decode('utf-8')) diff --git a/samples/server/petstore/flaskConnexion/swagger_server/util.py b/samples/server/petstore/flaskConnexion-python2/openapi_server/util.py similarity index 97% rename from samples/server/petstore/flaskConnexion/swagger_server/util.py rename to samples/server/petstore/flaskConnexion-python2/openapi_server/util.py index 527d1424c3d..4321570d5a0 100644 --- a/samples/server/petstore/flaskConnexion/swagger_server/util.py +++ b/samples/server/petstore/flaskConnexion-python2/openapi_server/util.py @@ -100,10 +100,10 @@ def deserialize_model(data, klass): """ instance = klass() - if not instance.swagger_types: + if not instance.openapi_types: return data - for attr, attr_type in six.iteritems(instance.swagger_types): + for attr, attr_type in six.iteritems(instance.openapi_types): if data is not None \ and instance.attribute_map[attr] in data \ and isinstance(data, (list, dict)): diff --git a/samples/server/petstore/flaskConnexion-python2/setup.py b/samples/server/petstore/flaskConnexion-python2/setup.py index be5dce52ab7..c8796a1f6e2 100644 --- a/samples/server/petstore/flaskConnexion-python2/setup.py +++ b/samples/server/petstore/flaskConnexion-python2/setup.py @@ -3,7 +3,7 @@ import sys from setuptools import setup, find_packages -NAME = "swagger_server" +NAME = "openapi_server" VERSION = "1.0.0" # To install the library, run the following @@ -18,18 +18,18 @@ REQUIRES = ["connexion"] setup( name=NAME, version=VERSION, - description="Swagger Petstore", - author_email="apiteam@swagger.io", + description="OpenAPI Petstore", + author_email="", url="", - keywords=["Swagger", "Swagger Petstore"], + keywords=["OpenAPI", "OpenAPI Petstore"], install_requires=REQUIRES, packages=find_packages(), - package_data={'': ['swagger/swagger.yaml']}, + package_data={'': ['openapi/openapi.yaml']}, include_package_data=True, entry_points={ - 'console_scripts': ['swagger_server=swagger_server.__main__:main']}, + 'console_scripts': ['openapi_server=openapi_server.__main__:main']}, long_description="""\ - This is a sample server Petstore server. You can find out more about Swagger at [http://swagger.io](http://swagger.io) or on [irc.freenode.net, #swagger](http://swagger.io/irc/). For this sample, you can use the api key `special-key` to test the authorization filters. + This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. """ ) diff --git a/samples/server/petstore/flaskConnexion-python2/swagger_server/models/__init__.py b/samples/server/petstore/flaskConnexion-python2/swagger_server/models/__init__.py deleted file mode 100644 index fcf8253348d..00000000000 --- a/samples/server/petstore/flaskConnexion-python2/swagger_server/models/__init__.py +++ /dev/null @@ -1,11 +0,0 @@ -# coding: utf-8 - -# flake8: noqa -from __future__ import absolute_import -# import models into model package -from swagger_server.models.api_response import ApiResponse -from swagger_server.models.category import Category -from swagger_server.models.order import Order -from swagger_server.models.pet import Pet -from swagger_server.models.tag import Tag -from swagger_server.models.user import User diff --git a/samples/server/petstore/flaskConnexion-python2/swagger_server/swagger/swagger.yaml b/samples/server/petstore/flaskConnexion-python2/swagger_server/swagger/swagger.yaml deleted file mode 100644 index 836d533de5c..00000000000 --- a/samples/server/petstore/flaskConnexion-python2/swagger_server/swagger/swagger.yaml +++ /dev/null @@ -1,775 +0,0 @@ ---- -swagger: "2.0" -info: - description: "This is a sample server Petstore server. You can find out more about\ - \ Swagger at [http://swagger.io](http://swagger.io) or on [irc.freenode.net, #swagger](http://swagger.io/irc/).\ - \ For this sample, you can use the api key `special-key` to test the authorization\ - \ filters." - version: "1.0.0" - title: "Swagger Petstore" - termsOfService: "http://swagger.io/terms/" - contact: - email: "apiteam@swagger.io" - license: - name: "Apache-2.0" - url: "http://www.apache.org/licenses/LICENSE-2.0.html" -host: "petstore.swagger.io" -basePath: "/v2" -tags: -- name: "pet" - description: "Everything about your Pets" - externalDocs: - description: "Find out more" - url: "http://swagger.io" -- name: "store" - description: "Access to Petstore orders" -- name: "user" - description: "Operations about user" - externalDocs: - description: "Find out more about our store" - url: "http://swagger.io" -schemes: -- "http" -paths: - /pet: - post: - tags: - - "pet" - summary: "Add a new pet to the store" - description: "" - operationId: "add_pet" - consumes: - - "application/json" - - "application/xml" - produces: - - "application/xml" - - "application/json" - parameters: - - in: "body" - name: "body" - description: "Pet object that needs to be added to the store" - required: true - schema: - $ref: "#/definitions/Pet" - responses: - 405: - description: "Invalid input" - security: - - petstore_auth: - - "write:pets" - - "read:pets" - x-swagger-router-controller: "swagger_server.controllers.pet_controller" - put: - tags: - - "pet" - summary: "Update an existing pet" - description: "" - operationId: "update_pet" - consumes: - - "application/json" - - "application/xml" - produces: - - "application/xml" - - "application/json" - parameters: - - in: "body" - name: "body" - description: "Pet object that needs to be added to the store" - required: true - schema: - $ref: "#/definitions/Pet" - responses: - 400: - description: "Invalid ID supplied" - 404: - description: "Pet not found" - 405: - description: "Validation exception" - security: - - petstore_auth: - - "write:pets" - - "read:pets" - x-swagger-router-controller: "swagger_server.controllers.pet_controller" - /pet/findByStatus: - get: - tags: - - "pet" - summary: "Finds Pets by status" - description: "Multiple status values can be provided with comma separated strings" - operationId: "find_pets_by_status" - produces: - - "application/xml" - - "application/json" - parameters: - - name: "status" - in: "query" - description: "Status values that need to be considered for filter" - required: true - type: "array" - items: - type: "string" - default: "available" - enum: - - "available" - - "pending" - - "sold" - collectionFormat: "csv" - responses: - 200: - description: "successful operation" - schema: - type: "array" - items: - $ref: "#/definitions/Pet" - 400: - description: "Invalid status value" - security: - - petstore_auth: - - "write:pets" - - "read:pets" - x-swagger-router-controller: "swagger_server.controllers.pet_controller" - /pet/findByTags: - get: - tags: - - "pet" - summary: "Finds Pets by tags" - description: "Multiple tags can be provided with comma separated strings. Use\ - \ tag1, tag2, tag3 for testing." - operationId: "find_pets_by_tags" - produces: - - "application/xml" - - "application/json" - parameters: - - name: "tags" - in: "query" - description: "Tags to filter by" - required: true - type: "array" - items: - type: "string" - collectionFormat: "csv" - responses: - 200: - description: "successful operation" - schema: - type: "array" - items: - $ref: "#/definitions/Pet" - 400: - description: "Invalid tag value" - security: - - petstore_auth: - - "write:pets" - - "read:pets" - deprecated: true - x-swagger-router-controller: "swagger_server.controllers.pet_controller" - /pet/{petId}: - get: - tags: - - "pet" - summary: "Find pet by ID" - description: "Returns a single pet" - operationId: "get_pet_by_id" - produces: - - "application/xml" - - "application/json" - parameters: - - name: "petId" - in: "path" - description: "ID of pet to return" - required: true - type: "integer" - format: "int64" - responses: - 200: - description: "successful operation" - schema: - $ref: "#/definitions/Pet" - 400: - description: "Invalid ID supplied" - 404: - description: "Pet not found" - security: - - api_key: [] - x-swagger-router-controller: "swagger_server.controllers.pet_controller" - post: - tags: - - "pet" - summary: "Updates a pet in the store with form data" - description: "" - operationId: "update_pet_with_form" - consumes: - - "application/x-www-form-urlencoded" - produces: - - "application/xml" - - "application/json" - parameters: - - name: "petId" - in: "path" - description: "ID of pet that needs to be updated" - required: true - type: "integer" - format: "int64" - - name: "name" - in: "formData" - description: "Updated name of the pet" - required: false - type: "string" - - name: "status" - in: "formData" - description: "Updated status of the pet" - required: false - type: "string" - responses: - 405: - description: "Invalid input" - security: - - petstore_auth: - - "write:pets" - - "read:pets" - x-swagger-router-controller: "swagger_server.controllers.pet_controller" - delete: - tags: - - "pet" - summary: "Deletes a pet" - description: "" - operationId: "delete_pet" - produces: - - "application/xml" - - "application/json" - parameters: - - name: "api_key" - in: "header" - required: false - type: "string" - - name: "petId" - in: "path" - description: "Pet id to delete" - required: true - type: "integer" - format: "int64" - responses: - 400: - description: "Invalid pet value" - security: - - petstore_auth: - - "write:pets" - - "read:pets" - x-swagger-router-controller: "swagger_server.controllers.pet_controller" - /pet/{petId}/uploadImage: - post: - tags: - - "pet" - summary: "uploads an image" - description: "" - operationId: "upload_file" - consumes: - - "multipart/form-data" - produces: - - "application/json" - parameters: - - name: "petId" - in: "path" - description: "ID of pet to update" - required: true - type: "integer" - format: "int64" - - name: "additionalMetadata" - in: "formData" - description: "Additional data to pass to server" - required: false - type: "string" - - name: "file" - in: "formData" - description: "file to upload" - required: false - type: "file" - responses: - 200: - description: "successful operation" - schema: - $ref: "#/definitions/ApiResponse" - security: - - petstore_auth: - - "write:pets" - - "read:pets" - x-swagger-router-controller: "swagger_server.controllers.pet_controller" - /store/inventory: - get: - tags: - - "store" - summary: "Returns pet inventories by status" - description: "Returns a map of status codes to quantities" - operationId: "get_inventory" - produces: - - "application/json" - parameters: [] - responses: - 200: - description: "successful operation" - schema: - type: "object" - additionalProperties: - type: "integer" - format: "int32" - security: - - api_key: [] - x-swagger-router-controller: "swagger_server.controllers.store_controller" - /store/order: - post: - tags: - - "store" - summary: "Place an order for a pet" - description: "" - operationId: "place_order" - produces: - - "application/xml" - - "application/json" - parameters: - - in: "body" - name: "body" - description: "order placed for purchasing the pet" - required: true - schema: - $ref: "#/definitions/Order" - responses: - 200: - description: "successful operation" - schema: - $ref: "#/definitions/Order" - 400: - description: "Invalid Order" - x-swagger-router-controller: "swagger_server.controllers.store_controller" - /store/order/{orderId}: - get: - tags: - - "store" - summary: "Find purchase order by ID" - description: "For valid response try integer IDs with value <= 5 or > 10. Other\ - \ values will generated exceptions" - operationId: "get_order_by_id" - produces: - - "application/xml" - - "application/json" - parameters: - - name: "orderId" - in: "path" - description: "ID of pet that needs to be fetched" - required: true - type: "integer" - maximum: 5 - minimum: 1 - format: "int64" - responses: - 200: - description: "successful operation" - schema: - $ref: "#/definitions/Order" - 400: - description: "Invalid ID supplied" - 404: - description: "Order not found" - x-swagger-router-controller: "swagger_server.controllers.store_controller" - delete: - tags: - - "store" - summary: "Delete purchase order by ID" - description: "For valid response try integer IDs with value < 1000. Anything\ - \ above 1000 or nonintegers will generate API errors" - operationId: "delete_order" - produces: - - "application/xml" - - "application/json" - parameters: - - name: "orderId" - in: "path" - description: "ID of the order that needs to be deleted" - required: true - type: "string" - responses: - 400: - description: "Invalid ID supplied" - 404: - description: "Order not found" - x-swagger-router-controller: "swagger_server.controllers.store_controller" - /user: - post: - tags: - - "user" - summary: "Create user" - description: "This can only be done by the logged in user." - operationId: "create_user" - produces: - - "application/xml" - - "application/json" - parameters: - - in: "body" - name: "body" - description: "Created user object" - required: true - schema: - $ref: "#/definitions/User" - responses: - default: - description: "successful operation" - x-swagger-router-controller: "swagger_server.controllers.user_controller" - /user/createWithArray: - post: - tags: - - "user" - summary: "Creates list of users with given input array" - description: "" - operationId: "create_users_with_array_input" - produces: - - "application/xml" - - "application/json" - parameters: - - in: "body" - name: "body" - description: "List of user object" - required: true - schema: - type: "array" - items: - $ref: "#/definitions/User" - responses: - default: - description: "successful operation" - x-swagger-router-controller: "swagger_server.controllers.user_controller" - /user/createWithList: - post: - tags: - - "user" - summary: "Creates list of users with given input array" - description: "" - operationId: "create_users_with_list_input" - produces: - - "application/xml" - - "application/json" - parameters: - - in: "body" - name: "body" - description: "List of user object" - required: true - schema: - type: "array" - items: - $ref: "#/definitions/User" - responses: - default: - description: "successful operation" - x-swagger-router-controller: "swagger_server.controllers.user_controller" - /user/login: - get: - tags: - - "user" - summary: "Logs user into the system" - description: "" - operationId: "login_user" - produces: - - "application/xml" - - "application/json" - parameters: - - name: "username" - in: "query" - description: "The user name for login" - required: true - type: "string" - - name: "password" - in: "query" - description: "The password for login in clear text" - required: true - type: "string" - responses: - 200: - description: "successful operation" - schema: - type: "string" - headers: - X-Rate-Limit: - type: "integer" - format: "int32" - description: "calls per hour allowed by the user" - X-Expires-After: - type: "string" - format: "date-time" - description: "date in UTC when toekn expires" - 400: - description: "Invalid username/password supplied" - x-swagger-router-controller: "swagger_server.controllers.user_controller" - /user/logout: - get: - tags: - - "user" - summary: "Logs out current logged in user session" - description: "" - operationId: "logout_user" - produces: - - "application/xml" - - "application/json" - parameters: [] - responses: - default: - description: "successful operation" - x-swagger-router-controller: "swagger_server.controllers.user_controller" - /user/{username}: - get: - tags: - - "user" - summary: "Get user by user name" - description: "" - operationId: "get_user_by_name" - produces: - - "application/xml" - - "application/json" - parameters: - - name: "username" - in: "path" - description: "The name that needs to be fetched. Use user1 for testing. " - required: true - type: "string" - responses: - 200: - description: "successful operation" - schema: - $ref: "#/definitions/User" - 400: - description: "Invalid username supplied" - 404: - description: "User not found" - x-swagger-router-controller: "swagger_server.controllers.user_controller" - put: - tags: - - "user" - summary: "Updated user" - description: "This can only be done by the logged in user." - operationId: "update_user" - produces: - - "application/xml" - - "application/json" - parameters: - - name: "username" - in: "path" - description: "name that need to be deleted" - required: true - type: "string" - - in: "body" - name: "body" - description: "Updated user object" - required: true - schema: - $ref: "#/definitions/User" - responses: - 400: - description: "Invalid user supplied" - 404: - description: "User not found" - x-swagger-router-controller: "swagger_server.controllers.user_controller" - delete: - tags: - - "user" - summary: "Delete user" - description: "This can only be done by the logged in user." - operationId: "delete_user" - produces: - - "application/xml" - - "application/json" - parameters: - - name: "username" - in: "path" - description: "The name that needs to be deleted" - required: true - type: "string" - responses: - 400: - description: "Invalid username supplied" - 404: - description: "User not found" - x-swagger-router-controller: "swagger_server.controllers.user_controller" -securityDefinitions: - petstore_auth: - type: "oauth2" - authorizationUrl: "http://petstore.swagger.io/api/oauth/dialog" - flow: "implicit" - scopes: - write:pets: "modify pets in your account" - read:pets: "read your pets" - api_key: - type: "apiKey" - name: "api_key" - in: "header" -definitions: - Order: - type: "object" - properties: - id: - type: "integer" - format: "int64" - petId: - type: "integer" - format: "int64" - quantity: - type: "integer" - format: "int32" - shipDate: - type: "string" - format: "date-time" - status: - type: "string" - description: "Order Status" - enum: - - "placed" - - "approved" - - "delivered" - complete: - type: "boolean" - default: false - title: "Pet Order" - description: "An order for a pets from the pet store" - example: - petId: 6 - quantity: 1 - id: 0 - shipDate: "2000-01-23T04:56:07.000+00:00" - complete: false - status: "placed" - xml: - name: "Order" - Category: - type: "object" - properties: - id: - type: "integer" - format: "int64" - name: - type: "string" - title: "Pet category" - description: "A category for a pet" - example: - name: "name" - id: 6 - xml: - name: "Category" - User: - type: "object" - properties: - id: - type: "integer" - format: "int64" - username: - type: "string" - firstName: - type: "string" - lastName: - type: "string" - email: - type: "string" - password: - type: "string" - phone: - type: "string" - userStatus: - type: "integer" - format: "int32" - description: "User Status" - title: "a User" - description: "A User who is purchasing from the pet store" - example: - firstName: "firstName" - lastName: "lastName" - password: "password" - userStatus: 6 - phone: "phone" - id: 0 - email: "email" - username: "username" - xml: - name: "User" - Tag: - type: "object" - properties: - id: - type: "integer" - format: "int64" - name: - type: "string" - title: "Pet Tag" - description: "A tag for a pet" - example: - name: "name" - id: 1 - xml: - name: "Tag" - Pet: - type: "object" - required: - - "name" - - "photoUrls" - properties: - id: - type: "integer" - format: "int64" - category: - $ref: "#/definitions/Category" - name: - type: "string" - example: "doggie" - photoUrls: - type: "array" - xml: - name: "photoUrl" - wrapped: true - items: - type: "string" - tags: - type: "array" - xml: - name: "tag" - wrapped: true - items: - $ref: "#/definitions/Tag" - status: - type: "string" - description: "pet status in the store" - enum: - - "available" - - "pending" - - "sold" - title: "a Pet" - description: "A pet for sale in the pet store" - example: - photoUrls: - - "photoUrls" - - "photoUrls" - name: "doggie" - id: 0 - category: - name: "name" - id: 6 - tags: - - name: "name" - id: 1 - - name: "name" - id: 1 - status: "available" - xml: - name: "Pet" - ApiResponse: - type: "object" - properties: - code: - type: "integer" - format: "int32" - type: - type: "string" - message: - type: "string" - title: "An uploaded response" - description: "Describes the result of uploading an image resource" - example: - code: 0 - type: "type" - message: "message" -externalDocs: - description: "Find out more about Swagger" - url: "http://swagger.io" diff --git a/samples/server/petstore/flaskConnexion/.dockerignore b/samples/server/petstore/flaskConnexion/.dockerignore index cdd823e64e7..f9619601908 100644 --- a/samples/server/petstore/flaskConnexion/.dockerignore +++ b/samples/server/petstore/flaskConnexion/.dockerignore @@ -1,5 +1,5 @@ .travis.yaml -.swagger-codegen-ignore +.openapi-generator-ignore README.md tox.ini git_push.sh diff --git a/samples/server/petstore/flaskConnexion/Dockerfile b/samples/server/petstore/flaskConnexion/Dockerfile index eb5704f6414..4857637c379 100644 --- a/samples/server/petstore/flaskConnexion/Dockerfile +++ b/samples/server/petstore/flaskConnexion/Dockerfile @@ -13,4 +13,4 @@ EXPOSE 8080 ENTRYPOINT ["python3"] -CMD ["-m", "swagger_server"] \ No newline at end of file +CMD ["-m", "openapi_server"] \ No newline at end of file diff --git a/samples/server/petstore/flaskConnexion/README.md b/samples/server/petstore/flaskConnexion/README.md index f623a2a02d8..673c8b3b5a0 100644 --- a/samples/server/petstore/flaskConnexion/README.md +++ b/samples/server/petstore/flaskConnexion/README.md @@ -1,9 +1,9 @@ -# Swagger generated server +# OpenAPI generated server ## Overview -This server was generated by the [swagger-codegen](https://github.com/swagger-api/swagger-codegen) project. By using the -[OpenAPI-Spec](https://github.com/swagger-api/swagger-core/wiki) from a remote server, you can easily generate a server stub. This -is an example of building a swagger-enabled Flask server. +This server was generated by the [OpenAPI Generator](https://openapi-generator.tech) project. By using the +[OpenAPI-Spec](https://openapis.org) from a remote server, you can easily generate a server stub. This +is an example of building a OpenAPI-enabled Flask server. This example uses the [Connexion](https://github.com/zalando/connexion) library on top of Flask. @@ -15,7 +15,7 @@ To run the server, please execute the following from the root directory: ``` pip3 install -r requirements.txt -python3 -m swagger_server +python3 -m openapi_server ``` and open your browser to here: @@ -24,7 +24,7 @@ and open your browser to here: http://localhost:8080/v2/ui/ ``` -Your Swagger definition lives here: +Your OpenAPI definition lives here: ``` http://localhost:8080/v2/openapi.json @@ -42,8 +42,8 @@ To run the server on a Docker container, please execute the following from the r ```bash # building the image -docker build -t swagger_server . +docker build -t openapi_server . # starting up a container -docker run -p 8080:8080 swagger_server +docker run -p 8080:8080 openapi_server ``` \ No newline at end of file diff --git a/samples/server/petstore/flaskConnexion/git_push.sh b/samples/server/petstore/flaskConnexion/git_push.sh index 160f6f21399..20057f67ade 100644 --- a/samples/server/petstore/flaskConnexion/git_push.sh +++ b/samples/server/petstore/flaskConnexion/git_push.sh @@ -1,7 +1,7 @@ #!/bin/sh # ref: https://help.github.com/articles/adding-an-existing-project-to-github-using-the-command-line/ # -# Usage example: /bin/sh ./git_push.sh wing328 swagger-petstore-perl "minor update" +# Usage example: /bin/sh ./git_push.sh wing328 openapi-pestore-perl "minor update" git_user_id=$1 git_repo_id=$2 diff --git a/samples/server/petstore/flaskConnexion/swagger_server/__init__.py b/samples/server/petstore/flaskConnexion/openapi_server/__init__.py similarity index 100% rename from samples/server/petstore/flaskConnexion/swagger_server/__init__.py rename to samples/server/petstore/flaskConnexion/openapi_server/__init__.py diff --git a/samples/server/petstore/flaskConnexion/swagger_server/__main__.py b/samples/server/petstore/flaskConnexion/openapi_server/__main__.py similarity index 70% rename from samples/server/petstore/flaskConnexion/swagger_server/__main__.py rename to samples/server/petstore/flaskConnexion/openapi_server/__main__.py index a2a4e9b0311..cd039f10492 100644 --- a/samples/server/petstore/flaskConnexion/swagger_server/__main__.py +++ b/samples/server/petstore/flaskConnexion/openapi_server/__main__.py @@ -2,13 +2,13 @@ import connexion -from swagger_server import encoder +from openapi_server import encoder def main(): app = connexion.App(__name__, specification_dir='./openapi/') app.app.json_encoder = encoder.JSONEncoder - app.add_api('openapi.yaml', arguments={'title': 'Swagger Petstore'}) + app.add_api('openapi.yaml', arguments={'title': 'OpenAPI Petstore'}) app.run(port=8080) diff --git a/samples/server/petstore/flaskConnexion/swagger_server/controllers/__init__.py b/samples/server/petstore/flaskConnexion/openapi_server/controllers/__init__.py similarity index 100% rename from samples/server/petstore/flaskConnexion/swagger_server/controllers/__init__.py rename to samples/server/petstore/flaskConnexion/openapi_server/controllers/__init__.py diff --git a/samples/server/petstore/flaskConnexion-python2/swagger_server/controllers/pet_controller.py b/samples/server/petstore/flaskConnexion/openapi_server/controllers/pet_controller.py similarity index 57% rename from samples/server/petstore/flaskConnexion-python2/swagger_server/controllers/pet_controller.py rename to samples/server/petstore/flaskConnexion/openapi_server/controllers/pet_controller.py index 5de865c908a..125820f0054 100644 --- a/samples/server/petstore/flaskConnexion-python2/swagger_server/controllers/pet_controller.py +++ b/samples/server/petstore/flaskConnexion/openapi_server/controllers/pet_controller.py @@ -1,33 +1,33 @@ import connexion import six -from swagger_server.models.api_response import ApiResponse # noqa: E501 -from swagger_server.models.pet import Pet # noqa: E501 -from swagger_server import util +from openapi_server.models.api_response import ApiResponse # noqa: E501 +from openapi_server.models.pet import Pet # noqa: E501 +from openapi_server import util -def add_pet(body): # noqa: E501 +def add_pet(pet): # noqa: E501 """Add a new pet to the store # noqa: E501 - :param body: Pet object that needs to be added to the store - :type body: dict | bytes + :param pet: Pet object that needs to be added to the store + :type pet: dict | bytes :rtype: None """ if connexion.request.is_json: - body = Pet.from_dict(connexion.request.get_json()) # noqa: E501 + pet = Pet.from_dict(connexion.request.get_json()) # noqa: E501 return 'do some magic!' -def delete_pet(petId, api_key=None): # noqa: E501 +def delete_pet(pet_id, api_key=None): # noqa: E501 """Deletes a pet # noqa: E501 - :param petId: Pet id to delete - :type petId: int + :param pet_id: Pet id to delete + :type pet_id: int :param api_key: :type api_key: str @@ -62,41 +62,41 @@ def find_pets_by_tags(tags): # noqa: E501 return 'do some magic!' -def get_pet_by_id(petId): # noqa: E501 +def get_pet_by_id(pet_id): # noqa: E501 """Find pet by ID Returns a single pet # noqa: E501 - :param petId: ID of pet to return - :type petId: int + :param pet_id: ID of pet to return + :type pet_id: int :rtype: Pet """ return 'do some magic!' -def update_pet(body): # noqa: E501 +def update_pet(pet): # noqa: E501 """Update an existing pet # noqa: E501 - :param body: Pet object that needs to be added to the store - :type body: dict | bytes + :param pet: Pet object that needs to be added to the store + :type pet: dict | bytes :rtype: None """ if connexion.request.is_json: - body = Pet.from_dict(connexion.request.get_json()) # noqa: E501 + pet = Pet.from_dict(connexion.request.get_json()) # noqa: E501 return 'do some magic!' -def update_pet_with_form(petId, name=None, status=None): # noqa: E501 +def update_pet_with_form(pet_id, name=None, status=None): # noqa: E501 """Updates a pet in the store with form data # noqa: E501 - :param petId: ID of pet that needs to be updated - :type petId: int + :param pet_id: ID of pet that needs to be updated + :type pet_id: int :param name: Updated name of the pet :type name: str :param status: Updated status of the pet @@ -107,17 +107,17 @@ def update_pet_with_form(petId, name=None, status=None): # noqa: E501 return 'do some magic!' -def upload_file(petId, additionalMetadata=None, file=None): # noqa: E501 +def upload_file(pet_id, additional_metadata=None, file=None): # noqa: E501 """uploads an image # noqa: E501 - :param petId: ID of pet to update - :type petId: int - :param additionalMetadata: Additional data to pass to server - :type additionalMetadata: str + :param pet_id: ID of pet to update + :type pet_id: int + :param additional_metadata: Additional data to pass to server + :type additional_metadata: str :param file: file to upload - :type file: werkzeug.datastructures.FileStorage + :type file: str :rtype: ApiResponse """ diff --git a/samples/server/petstore/flaskConnexion-python2/swagger_server/controllers/store_controller.py b/samples/server/petstore/flaskConnexion/openapi_server/controllers/store_controller.py similarity index 60% rename from samples/server/petstore/flaskConnexion-python2/swagger_server/controllers/store_controller.py rename to samples/server/petstore/flaskConnexion/openapi_server/controllers/store_controller.py index eae3546c21e..3d16d99859e 100644 --- a/samples/server/petstore/flaskConnexion-python2/swagger_server/controllers/store_controller.py +++ b/samples/server/petstore/flaskConnexion/openapi_server/controllers/store_controller.py @@ -1,17 +1,17 @@ import connexion import six -from swagger_server.models.order import Order # noqa: E501 -from swagger_server import util +from openapi_server.models.order import Order # noqa: E501 +from openapi_server import util -def delete_order(orderId): # noqa: E501 +def delete_order(order_id): # noqa: E501 """Delete purchase order by ID For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors # noqa: E501 - :param orderId: ID of the order that needs to be deleted - :type orderId: str + :param order_id: ID of the order that needs to be deleted + :type order_id: str :rtype: None """ @@ -29,29 +29,29 @@ def get_inventory(): # noqa: E501 return 'do some magic!' -def get_order_by_id(orderId): # noqa: E501 +def get_order_by_id(order_id): # noqa: E501 """Find purchase order by ID For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions # noqa: E501 - :param orderId: ID of pet that needs to be fetched - :type orderId: int + :param order_id: ID of pet that needs to be fetched + :type order_id: int :rtype: Order """ return 'do some magic!' -def place_order(body): # noqa: E501 +def place_order(order): # noqa: E501 """Place an order for a pet # noqa: E501 - :param body: order placed for purchasing the pet - :type body: dict | bytes + :param order: order placed for purchasing the pet + :type order: dict | bytes :rtype: Order """ if connexion.request.is_json: - body = Order.from_dict(connexion.request.get_json()) # noqa: E501 + order = Order.from_dict(connexion.request.get_json()) # noqa: E501 return 'do some magic!' diff --git a/samples/server/petstore/flaskConnexion-python2/swagger_server/controllers/user_controller.py b/samples/server/petstore/flaskConnexion/openapi_server/controllers/user_controller.py similarity index 68% rename from samples/server/petstore/flaskConnexion-python2/swagger_server/controllers/user_controller.py rename to samples/server/petstore/flaskConnexion/openapi_server/controllers/user_controller.py index c7c3ee3519a..9b970626212 100644 --- a/samples/server/petstore/flaskConnexion-python2/swagger_server/controllers/user_controller.py +++ b/samples/server/petstore/flaskConnexion/openapi_server/controllers/user_controller.py @@ -1,52 +1,52 @@ import connexion import six -from swagger_server.models.user import User # noqa: E501 -from swagger_server import util +from openapi_server.models.user import User # noqa: E501 +from openapi_server import util -def create_user(body): # noqa: E501 +def create_user(user): # noqa: E501 """Create user This can only be done by the logged in user. # noqa: E501 - :param body: Created user object - :type body: dict | bytes + :param user: Created user object + :type user: dict | bytes :rtype: None """ if connexion.request.is_json: - body = User.from_dict(connexion.request.get_json()) # noqa: E501 + user = User.from_dict(connexion.request.get_json()) # noqa: E501 return 'do some magic!' -def create_users_with_array_input(body): # noqa: E501 +def create_users_with_array_input(user): # noqa: E501 """Creates list of users with given input array # noqa: E501 - :param body: List of user object - :type body: list | bytes + :param user: List of user object + :type user: list | bytes :rtype: None """ if connexion.request.is_json: - body = [User.from_dict(d) for d in connexion.request.get_json()] # noqa: E501 + user = [User.from_dict(d) for d in connexion.request.get_json()] # noqa: E501 return 'do some magic!' -def create_users_with_list_input(body): # noqa: E501 +def create_users_with_list_input(user): # noqa: E501 """Creates list of users with given input array # noqa: E501 - :param body: List of user object - :type body: list | bytes + :param user: List of user object + :type user: list | bytes :rtype: None """ if connexion.request.is_json: - body = [User.from_dict(d) for d in connexion.request.get_json()] # noqa: E501 + user = [User.from_dict(d) for d in connexion.request.get_json()] # noqa: E501 return 'do some magic!' @@ -68,7 +68,7 @@ def get_user_by_name(username): # noqa: E501 # noqa: E501 - :param username: The name that needs to be fetched. Use user1 for testing. + :param username: The name that needs to be fetched. Use user1 for testing. :type username: str :rtype: User @@ -102,18 +102,18 @@ def logout_user(): # noqa: E501 return 'do some magic!' -def update_user(username, body): # noqa: E501 +def update_user(username, user): # noqa: E501 """Updated user This can only be done by the logged in user. # noqa: E501 :param username: name that need to be deleted :type username: str - :param body: Updated user object - :type body: dict | bytes + :param user: Updated user object + :type user: dict | bytes :rtype: None """ if connexion.request.is_json: - body = User.from_dict(connexion.request.get_json()) # noqa: E501 + user = User.from_dict(connexion.request.get_json()) # noqa: E501 return 'do some magic!' diff --git a/samples/server/petstore/flaskConnexion-python2/swagger_server/encoder.py b/samples/server/petstore/flaskConnexion/openapi_server/encoder.py similarity index 81% rename from samples/server/petstore/flaskConnexion-python2/swagger_server/encoder.py rename to samples/server/petstore/flaskConnexion/openapi_server/encoder.py index 61ba4721961..3bbef854f3b 100644 --- a/samples/server/petstore/flaskConnexion-python2/swagger_server/encoder.py +++ b/samples/server/petstore/flaskConnexion/openapi_server/encoder.py @@ -1,7 +1,7 @@ from connexion.apps.flask_app import FlaskJSONEncoder import six -from swagger_server.models.base_model_ import Model +from openapi_server.models.base_model_ import Model class JSONEncoder(FlaskJSONEncoder): @@ -10,7 +10,7 @@ class JSONEncoder(FlaskJSONEncoder): def default(self, o): if isinstance(o, Model): dikt = {} - for attr, _ in six.iteritems(o.swagger_types): + for attr, _ in six.iteritems(o.openapi_types): value = getattr(o, attr) if value is None and not self.include_nulls: continue diff --git a/samples/server/petstore/flaskConnexion/openapi_server/models/__init__.py b/samples/server/petstore/flaskConnexion/openapi_server/models/__init__.py new file mode 100644 index 00000000000..962f6f34936 --- /dev/null +++ b/samples/server/petstore/flaskConnexion/openapi_server/models/__init__.py @@ -0,0 +1,11 @@ +# coding: utf-8 + +# flake8: noqa +from __future__ import absolute_import +# import models into model package +from openapi_server.models.api_response import ApiResponse +from openapi_server.models.category import Category +from openapi_server.models.order import Order +from openapi_server.models.pet import Pet +from openapi_server.models.tag import Tag +from openapi_server.models.user import User diff --git a/samples/server/petstore/flaskConnexion/swagger_server/models/api_response.py b/samples/server/petstore/flaskConnexion/openapi_server/models/api_response.py similarity index 90% rename from samples/server/petstore/flaskConnexion/swagger_server/models/api_response.py rename to samples/server/petstore/flaskConnexion/openapi_server/models/api_response.py index 17e3d36ce61..8d4483699ef 100644 --- a/samples/server/petstore/flaskConnexion/swagger_server/models/api_response.py +++ b/samples/server/petstore/flaskConnexion/openapi_server/models/api_response.py @@ -5,18 +5,18 @@ from datetime import date, datetime # noqa: F401 from typing import List, Dict # noqa: F401 -from swagger_server.models.base_model_ import Model -from swagger_server import util +from openapi_server.models.base_model_ import Model +from openapi_server import util class ApiResponse(Model): - """NOTE: This class is auto generated by the swagger code generator program. + """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). Do not edit the class manually. """ def __init__(self, code: int=None, type: str=None, message: str=None): # noqa: E501 - """ApiResponse - a model defined in Swagger + """ApiResponse - a model defined in OpenAPI :param code: The code of this ApiResponse. # noqa: E501 :type code: int @@ -25,7 +25,7 @@ class ApiResponse(Model): :param message: The message of this ApiResponse. # noqa: E501 :type message: str """ - self.swagger_types = { + self.openapi_types = { 'code': int, 'type': str, 'message': str diff --git a/samples/server/petstore/flaskConnexion/swagger_server/models/base_model_.py b/samples/server/petstore/flaskConnexion/openapi_server/models/base_model_.py similarity index 91% rename from samples/server/petstore/flaskConnexion/swagger_server/models/base_model_.py rename to samples/server/petstore/flaskConnexion/openapi_server/models/base_model_.py index 97999c3d323..ec33e3ba3cf 100644 --- a/samples/server/petstore/flaskConnexion/swagger_server/models/base_model_.py +++ b/samples/server/petstore/flaskConnexion/openapi_server/models/base_model_.py @@ -3,15 +3,15 @@ import pprint import six import typing -from swagger_server import util +from openapi_server import util T = typing.TypeVar('T') class Model(object): - # swaggerTypes: The key is attribute name and the + # openapiTypes: The key is attribute name and the # value is attribute type. - swagger_types = {} + openapi_types = {} # attributeMap: The key is attribute name and the # value is json key in definition. @@ -29,7 +29,7 @@ class Model(object): """ result = {} - for attr, _ in six.iteritems(self.swagger_types): + for attr, _ in six.iteritems(self.openapi_types): value = getattr(self, attr) if isinstance(value, list): result[attr] = list(map( diff --git a/samples/server/petstore/flaskConnexion/swagger_server/models/category.py b/samples/server/petstore/flaskConnexion/openapi_server/models/category.py similarity index 86% rename from samples/server/petstore/flaskConnexion/swagger_server/models/category.py rename to samples/server/petstore/flaskConnexion/openapi_server/models/category.py index 5a5bab5913d..5f4ecd5c8ac 100644 --- a/samples/server/petstore/flaskConnexion/swagger_server/models/category.py +++ b/samples/server/petstore/flaskConnexion/openapi_server/models/category.py @@ -5,25 +5,25 @@ from datetime import date, datetime # noqa: F401 from typing import List, Dict # noqa: F401 -from swagger_server.models.base_model_ import Model -from swagger_server import util +from openapi_server.models.base_model_ import Model +from openapi_server import util class Category(Model): - """NOTE: This class is auto generated by the swagger code generator program. + """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). Do not edit the class manually. """ def __init__(self, id: int=None, name: str=None): # noqa: E501 - """Category - a model defined in Swagger + """Category - a model defined in OpenAPI :param id: The id of this Category. # noqa: E501 :type id: int :param name: The name of this Category. # noqa: E501 :type name: str """ - self.swagger_types = { + self.openapi_types = { 'id': int, 'name': str } diff --git a/samples/server/petstore/flaskConnexion/swagger_server/models/order.py b/samples/server/petstore/flaskConnexion/openapi_server/models/order.py similarity index 94% rename from samples/server/petstore/flaskConnexion/swagger_server/models/order.py rename to samples/server/petstore/flaskConnexion/openapi_server/models/order.py index 5b36925d07f..b0587cbe685 100644 --- a/samples/server/petstore/flaskConnexion/swagger_server/models/order.py +++ b/samples/server/petstore/flaskConnexion/openapi_server/models/order.py @@ -5,18 +5,18 @@ from datetime import date, datetime # noqa: F401 from typing import List, Dict # noqa: F401 -from swagger_server.models.base_model_ import Model -from swagger_server import util +from openapi_server.models.base_model_ import Model +from openapi_server import util class Order(Model): - """NOTE: This class is auto generated by the swagger code generator program. + """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). Do not edit the class manually. """ def __init__(self, id: int=None, pet_id: int=None, quantity: int=None, ship_date: datetime=None, status: str=None, complete: bool=False): # noqa: E501 - """Order - a model defined in Swagger + """Order - a model defined in OpenAPI :param id: The id of this Order. # noqa: E501 :type id: int @@ -31,7 +31,7 @@ class Order(Model): :param complete: The complete of this Order. # noqa: E501 :type complete: bool """ - self.swagger_types = { + self.openapi_types = { 'id': int, 'pet_id': int, 'quantity': int, diff --git a/samples/server/petstore/flaskConnexion/swagger_server/models/pet.py b/samples/server/petstore/flaskConnexion/openapi_server/models/pet.py similarity index 92% rename from samples/server/petstore/flaskConnexion/swagger_server/models/pet.py rename to samples/server/petstore/flaskConnexion/openapi_server/models/pet.py index 5fa728911de..7557b576150 100644 --- a/samples/server/petstore/flaskConnexion/swagger_server/models/pet.py +++ b/samples/server/petstore/flaskConnexion/openapi_server/models/pet.py @@ -5,20 +5,20 @@ from datetime import date, datetime # noqa: F401 from typing import List, Dict # noqa: F401 -from swagger_server.models.base_model_ import Model -from swagger_server.models.category import Category # noqa: F401,E501 -from swagger_server.models.tag import Tag # noqa: F401,E501 -from swagger_server import util +from openapi_server.models.base_model_ import Model +from openapi_server.models.category import Category # noqa: F401,E501 +from openapi_server.models.tag import Tag # noqa: F401,E501 +from openapi_server import util class Pet(Model): - """NOTE: This class is auto generated by the swagger code generator program. + """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). Do not edit the class manually. """ def __init__(self, id: int=None, category: Category=None, name: str=None, photo_urls: List[str]=None, tags: List[Tag]=None, status: str=None): # noqa: E501 - """Pet - a model defined in Swagger + """Pet - a model defined in OpenAPI :param id: The id of this Pet. # noqa: E501 :type id: int @@ -33,7 +33,7 @@ class Pet(Model): :param status: The status of this Pet. # noqa: E501 :type status: str """ - self.swagger_types = { + self.openapi_types = { 'id': int, 'category': Category, 'name': str, diff --git a/samples/server/petstore/flaskConnexion/swagger_server/models/tag.py b/samples/server/petstore/flaskConnexion/openapi_server/models/tag.py similarity index 86% rename from samples/server/petstore/flaskConnexion/swagger_server/models/tag.py rename to samples/server/petstore/flaskConnexion/openapi_server/models/tag.py index 62ba5b21be8..dbf79c3a2af 100644 --- a/samples/server/petstore/flaskConnexion/swagger_server/models/tag.py +++ b/samples/server/petstore/flaskConnexion/openapi_server/models/tag.py @@ -5,25 +5,25 @@ from datetime import date, datetime # noqa: F401 from typing import List, Dict # noqa: F401 -from swagger_server.models.base_model_ import Model -from swagger_server import util +from openapi_server.models.base_model_ import Model +from openapi_server import util class Tag(Model): - """NOTE: This class is auto generated by the swagger code generator program. + """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). Do not edit the class manually. """ def __init__(self, id: int=None, name: str=None): # noqa: E501 - """Tag - a model defined in Swagger + """Tag - a model defined in OpenAPI :param id: The id of this Tag. # noqa: E501 :type id: int :param name: The name of this Tag. # noqa: E501 :type name: str """ - self.swagger_types = { + self.openapi_types = { 'id': int, 'name': str } diff --git a/samples/server/petstore/flaskConnexion/swagger_server/models/user.py b/samples/server/petstore/flaskConnexion/openapi_server/models/user.py similarity index 95% rename from samples/server/petstore/flaskConnexion/swagger_server/models/user.py rename to samples/server/petstore/flaskConnexion/openapi_server/models/user.py index bf1fd963c70..048551da85c 100644 --- a/samples/server/petstore/flaskConnexion/swagger_server/models/user.py +++ b/samples/server/petstore/flaskConnexion/openapi_server/models/user.py @@ -5,18 +5,18 @@ from datetime import date, datetime # noqa: F401 from typing import List, Dict # noqa: F401 -from swagger_server.models.base_model_ import Model -from swagger_server import util +from openapi_server.models.base_model_ import Model +from openapi_server import util class User(Model): - """NOTE: This class is auto generated by the swagger code generator program. + """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). Do not edit the class manually. """ def __init__(self, id: int=None, username: str=None, first_name: str=None, last_name: str=None, email: str=None, password: str=None, phone: str=None, user_status: int=None): # noqa: E501 - """User - a model defined in Swagger + """User - a model defined in OpenAPI :param id: The id of this User. # noqa: E501 :type id: int @@ -35,7 +35,7 @@ class User(Model): :param user_status: The user_status of this User. # noqa: E501 :type user_status: int """ - self.swagger_types = { + self.openapi_types = { 'id': int, 'username': str, 'first_name': str, diff --git a/samples/server/petstore/flaskConnexion/openapi_server/openapi/openapi.yaml b/samples/server/petstore/flaskConnexion/openapi_server/openapi/openapi.yaml new file mode 100644 index 00000000000..20174ed3ca1 --- /dev/null +++ b/samples/server/petstore/flaskConnexion/openapi_server/openapi/openapi.yaml @@ -0,0 +1,769 @@ +openapi: 3.0.1 +info: + title: OpenAPI Petstore + description: This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. + license: + name: Apache-2.0 + url: http://www.apache.org/licenses/LICENSE-2.0.html + version: 1.0.0 +servers: +- url: http://petstore.swagger.io/v2 +tags: +- name: pet + description: Everything about your Pets +- name: store + description: Access to Petstore orders +- name: user + description: Operations about user +paths: + /pet: + put: + tags: + - pet + summary: Update an existing pet + operationId: update_pet + requestBody: + description: Pet object that needs to be added to the store + content: + application/json: + schema: + $ref: '#/components/schemas/Pet' + application/xml: + schema: + $ref: '#/components/schemas/Pet' + required: true + responses: + 400: + description: Invalid ID supplied + content: {} + 404: + description: Pet not found + content: {} + 405: + description: Validation exception + content: {} + security: + - petstore_auth: + - write:pets + - read:pets + x-openapi-router-controller: openapi_server.controllers.pet_controller + post: + tags: + - pet + summary: Add a new pet to the store + operationId: add_pet + requestBody: + description: Pet object that needs to be added to the store + content: + application/json: + schema: + $ref: '#/components/schemas/Pet' + application/xml: + schema: + $ref: '#/components/schemas/Pet' + required: true + responses: + 405: + description: Invalid input + content: {} + security: + - petstore_auth: + - write:pets + - read:pets + x-openapi-router-controller: openapi_server.controllers.pet_controller + /pet/findByStatus: + get: + tags: + - pet + summary: Finds Pets by status + description: Multiple status values can be provided with comma separated strings + operationId: find_pets_by_status + parameters: + - name: status + in: query + description: Status values that need to be considered for filter + required: true + explode: false + schema: + type: array + items: + type: string + default: available + enum: + - available + - pending + - sold + responses: + 200: + description: successful operation + content: + application/xml: + schema: + type: array + items: + $ref: '#/components/schemas/Pet' + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/Pet' + 400: + description: Invalid status value + content: {} + security: + - petstore_auth: + - write:pets + - read:pets + x-openapi-router-controller: openapi_server.controllers.pet_controller + /pet/findByTags: + get: + tags: + - pet + summary: Finds Pets by tags + description: Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. + operationId: find_pets_by_tags + parameters: + - name: tags + in: query + description: Tags to filter by + required: true + explode: false + schema: + type: array + items: + type: string + responses: + 200: + description: successful operation + content: + application/xml: + schema: + type: array + items: + $ref: '#/components/schemas/Pet' + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/Pet' + 400: + description: Invalid tag value + content: {} + deprecated: true + security: + - petstore_auth: + - write:pets + - read:pets + x-openapi-router-controller: openapi_server.controllers.pet_controller + /pet/{petId}: + get: + tags: + - pet + summary: Find pet by ID + description: Returns a single pet + operationId: get_pet_by_id + parameters: + - name: petId + in: path + description: ID of pet to return + required: true + schema: + type: integer + format: int64 + responses: + 200: + description: successful operation + content: + application/xml: + schema: + $ref: '#/components/schemas/Pet' + application/json: + schema: + $ref: '#/components/schemas/Pet' + 400: + description: Invalid ID supplied + content: {} + 404: + description: Pet not found + content: {} + security: + - api_key: [] + x-openapi-router-controller: openapi_server.controllers.pet_controller + post: + tags: + - pet + summary: Updates a pet in the store with form data + operationId: update_pet_with_form + parameters: + - name: petId + in: path + description: ID of pet that needs to be updated + required: true + schema: + type: integer + format: int64 + requestBody: + content: + application/x-www-form-urlencoded: + schema: + properties: + name: + type: string + description: Updated name of the pet + status: + type: string + description: Updated status of the pet + responses: + 405: + description: Invalid input + content: {} + security: + - petstore_auth: + - write:pets + - read:pets + x-openapi-router-controller: openapi_server.controllers.pet_controller + delete: + tags: + - pet + summary: Deletes a pet + operationId: delete_pet + parameters: + - name: api_key + in: header + schema: + type: string + - name: petId + in: path + description: Pet id to delete + required: true + schema: + type: integer + format: int64 + responses: + 400: + description: Invalid pet value + content: {} + security: + - petstore_auth: + - write:pets + - read:pets + x-openapi-router-controller: openapi_server.controllers.pet_controller + /pet/{petId}/uploadImage: + post: + tags: + - pet + summary: uploads an image + operationId: upload_file + parameters: + - name: petId + in: path + description: ID of pet to update + required: true + schema: + type: integer + format: int64 + requestBody: + content: + multipart/form-data: + schema: + properties: + additionalMetadata: + type: string + description: Additional data to pass to server + file: + type: string + description: file to upload + format: binary + responses: + 200: + description: successful operation + content: + application/json: + schema: + $ref: '#/components/schemas/ApiResponse' + security: + - petstore_auth: + - write:pets + - read:pets + x-openapi-router-controller: openapi_server.controllers.pet_controller + /store/inventory: + get: + tags: + - store + summary: Returns pet inventories by status + description: Returns a map of status codes to quantities + operationId: get_inventory + responses: + 200: + description: successful operation + content: + application/json: + schema: + type: object + additionalProperties: + type: integer + format: int32 + security: + - api_key: [] + x-openapi-router-controller: openapi_server.controllers.store_controller + /store/order: + post: + tags: + - store + summary: Place an order for a pet + operationId: place_order + requestBody: + description: order placed for purchasing the pet + content: + '*/*': + schema: + $ref: '#/components/schemas/Order' + required: true + responses: + 200: + description: successful operation + content: + application/xml: + schema: + $ref: '#/components/schemas/Order' + application/json: + schema: + $ref: '#/components/schemas/Order' + 400: + description: Invalid Order + content: {} + x-openapi-router-controller: openapi_server.controllers.store_controller + /store/order/{orderId}: + get: + tags: + - store + summary: Find purchase order by ID + description: For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions + operationId: get_order_by_id + parameters: + - name: orderId + in: path + description: ID of pet that needs to be fetched + required: true + schema: + maximum: 5 + minimum: 1 + type: integer + format: int64 + responses: + 200: + description: successful operation + content: + application/xml: + schema: + $ref: '#/components/schemas/Order' + application/json: + schema: + $ref: '#/components/schemas/Order' + 400: + description: Invalid ID supplied + content: {} + 404: + description: Order not found + content: {} + x-openapi-router-controller: openapi_server.controllers.store_controller + delete: + tags: + - store + summary: Delete purchase order by ID + description: For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors + operationId: delete_order + parameters: + - name: orderId + in: path + description: ID of the order that needs to be deleted + required: true + schema: + type: string + responses: + 400: + description: Invalid ID supplied + content: {} + 404: + description: Order not found + content: {} + x-openapi-router-controller: openapi_server.controllers.store_controller + /user: + post: + tags: + - user + summary: Create user + description: This can only be done by the logged in user. + operationId: create_user + requestBody: + description: Created user object + content: + '*/*': + schema: + $ref: '#/components/schemas/User' + required: true + responses: + default: + description: successful operation + content: {} + x-openapi-router-controller: openapi_server.controllers.user_controller + /user/createWithArray: + post: + tags: + - user + summary: Creates list of users with given input array + operationId: create_users_with_array_input + requestBody: + description: List of user object + content: + '*/*': + schema: + type: array + items: + $ref: '#/components/schemas/User' + required: true + responses: + default: + description: successful operation + content: {} + x-openapi-router-controller: openapi_server.controllers.user_controller + /user/createWithList: + post: + tags: + - user + summary: Creates list of users with given input array + operationId: create_users_with_list_input + requestBody: + description: List of user object + content: + '*/*': + schema: + type: array + items: + $ref: '#/components/schemas/User' + required: true + responses: + default: + description: successful operation + content: {} + x-openapi-router-controller: openapi_server.controllers.user_controller + /user/login: + get: + tags: + - user + summary: Logs user into the system + operationId: login_user + parameters: + - name: username + in: query + description: The user name for login + required: true + schema: + type: string + - name: password + in: query + description: The password for login in clear text + required: true + schema: + type: string + responses: + 200: + description: successful operation + headers: + X-Rate-Limit: + description: calls per hour allowed by the user + schema: + type: integer + format: int32 + X-Expires-After: + description: date in UTC when toekn expires + schema: + type: string + format: date-time + content: + application/xml: + schema: + type: string + application/json: + schema: + type: string + 400: + description: Invalid username/password supplied + content: {} + x-openapi-router-controller: openapi_server.controllers.user_controller + /user/logout: + get: + tags: + - user + summary: Logs out current logged in user session + operationId: logout_user + responses: + default: + description: successful operation + content: {} + x-openapi-router-controller: openapi_server.controllers.user_controller + /user/{username}: + get: + tags: + - user + summary: Get user by user name + operationId: get_user_by_name + parameters: + - name: username + in: path + description: The name that needs to be fetched. Use user1 for testing. + required: true + schema: + type: string + responses: + 200: + description: successful operation + content: + application/xml: + schema: + $ref: '#/components/schemas/User' + application/json: + schema: + $ref: '#/components/schemas/User' + 400: + description: Invalid username supplied + content: {} + 404: + description: User not found + content: {} + x-openapi-router-controller: openapi_server.controllers.user_controller + put: + tags: + - user + summary: Updated user + description: This can only be done by the logged in user. + operationId: update_user + parameters: + - name: username + in: path + description: name that need to be deleted + required: true + schema: + type: string + requestBody: + description: Updated user object + content: + '*/*': + schema: + $ref: '#/components/schemas/User' + required: true + responses: + 400: + description: Invalid user supplied + content: {} + 404: + description: User not found + content: {} + x-openapi-router-controller: openapi_server.controllers.user_controller + delete: + tags: + - user + summary: Delete user + description: This can only be done by the logged in user. + operationId: delete_user + parameters: + - name: username + in: path + description: The name that needs to be deleted + required: true + schema: + type: string + responses: + 400: + description: Invalid username supplied + content: {} + 404: + description: User not found + content: {} + x-openapi-router-controller: openapi_server.controllers.user_controller +components: + schemas: + Order: + title: Pet Order + type: object + properties: + id: + type: integer + format: int64 + petId: + type: integer + format: int64 + quantity: + type: integer + format: int32 + shipDate: + type: string + format: date-time + status: + type: string + description: Order Status + enum: + - placed + - approved + - delivered + complete: + type: boolean + default: false + description: An order for a pets from the pet store + example: + petId: 6 + quantity: 1 + id: 0 + shipDate: 2000-01-23T04:56:07.000+00:00 + complete: false + status: placed + xml: + name: Order + Category: + title: Pet category + type: object + properties: + id: + type: integer + format: int64 + name: + type: string + description: A category for a pet + example: + name: name + id: 6 + xml: + name: Category + User: + title: a User + type: object + properties: + id: + type: integer + format: int64 + username: + type: string + firstName: + type: string + lastName: + type: string + email: + type: string + password: + type: string + phone: + type: string + userStatus: + type: integer + description: User Status + format: int32 + description: A User who is purchasing from the pet store + example: + firstName: firstName + lastName: lastName + password: password + userStatus: 6 + phone: phone + id: 0 + email: email + username: username + xml: + name: User + Tag: + title: Pet Tag + type: object + properties: + id: + type: integer + format: int64 + name: + type: string + description: A tag for a pet + example: + name: name + id: 1 + xml: + name: Tag + Pet: + title: a Pet + required: + - name + - photoUrls + type: object + properties: + id: + type: integer + format: int64 + category: + $ref: '#/components/schemas/Category' + name: + type: string + example: doggie + photoUrls: + type: array + xml: + name: photoUrl + wrapped: true + items: + type: string + tags: + type: array + xml: + name: tag + wrapped: true + items: + $ref: '#/components/schemas/Tag' + status: + type: string + description: pet status in the store + enum: + - available + - pending + - sold + description: A pet for sale in the pet store + example: + photoUrls: + - photoUrls + - photoUrls + name: doggie + id: 0 + category: + name: name + id: 6 + tags: + - name: name + id: 1 + - name: name + id: 1 + status: available + xml: + name: Pet + ApiResponse: + title: An uploaded response + type: object + properties: + code: + type: integer + format: int32 + type: + type: string + message: + type: string + description: Describes the result of uploading an image resource + example: + code: 0 + type: type + message: message + securitySchemes: + petstore_auth: + type: oauth2 + flows: + implicit: + authorizationUrl: http://petstore.swagger.io/api/oauth/dialog + scopes: + write:pets: modify pets in your account + read:pets: read your pets + api_key: + type: apiKey + name: api_key + in: header diff --git a/samples/server/petstore/flaskConnexion-python2/swagger_server/test/__init__.py b/samples/server/petstore/flaskConnexion/openapi_server/test/__init__.py similarity index 62% rename from samples/server/petstore/flaskConnexion-python2/swagger_server/test/__init__.py rename to samples/server/petstore/flaskConnexion/openapi_server/test/__init__.py index 644506301ce..cf6b70fce26 100644 --- a/samples/server/petstore/flaskConnexion-python2/swagger_server/test/__init__.py +++ b/samples/server/petstore/flaskConnexion/openapi_server/test/__init__.py @@ -3,14 +3,14 @@ import logging import connexion from flask_testing import TestCase -from swagger_server.encoder import JSONEncoder +from openapi_server.encoder import JSONEncoder class BaseTestCase(TestCase): def create_app(self): logging.getLogger('connexion.operation').setLevel('ERROR') - app = connexion.App(__name__, specification_dir='../swagger/') + app = connexion.App(__name__, specification_dir='../openapi/') app.app.json_encoder = JSONEncoder - app.add_api('swagger.yaml') + app.add_api('openapi.yaml') return app.app diff --git a/samples/server/petstore/flaskConnexion-python2/swagger_server/test/test_pet_controller.py b/samples/server/petstore/flaskConnexion/openapi_server/test/test_pet_controller.py similarity index 85% rename from samples/server/petstore/flaskConnexion-python2/swagger_server/test/test_pet_controller.py rename to samples/server/petstore/flaskConnexion/openapi_server/test/test_pet_controller.py index fb4c34ea3e1..e159870b7c2 100644 --- a/samples/server/petstore/flaskConnexion-python2/swagger_server/test/test_pet_controller.py +++ b/samples/server/petstore/flaskConnexion/openapi_server/test/test_pet_controller.py @@ -5,9 +5,9 @@ from __future__ import absolute_import from flask import json from six import BytesIO -from swagger_server.models.api_response import ApiResponse # noqa: E501 -from swagger_server.models.pet import Pet # noqa: E501 -from swagger_server.test import BaseTestCase +from openapi_server.models.api_response import ApiResponse # noqa: E501 +from openapi_server.models.pet import Pet # noqa: E501 +from openapi_server.test import BaseTestCase class TestPetController(BaseTestCase): @@ -18,11 +18,11 @@ class TestPetController(BaseTestCase): Add a new pet to the store """ - body = Pet() + pet = Pet() response = self.client.open( '/v2/pet', method='POST', - data=json.dumps(body), + data=json.dumps(pet), content_type='application/json') self.assert200(response, 'Response body is : ' + response.data.decode('utf-8')) @@ -34,7 +34,7 @@ class TestPetController(BaseTestCase): """ headers = [('api_key', 'api_key_example')] response = self.client.open( - '/v2/pet/{petId}'.format(petId=789), + '/v2/pet/{petId}'.format(pet_id=56), method='DELETE', headers=headers) self.assert200(response, @@ -72,7 +72,7 @@ class TestPetController(BaseTestCase): Find pet by ID """ response = self.client.open( - '/v2/pet/{petId}'.format(petId=789), + '/v2/pet/{petId}'.format(pet_id=56), method='GET') self.assert200(response, 'Response body is : ' + response.data.decode('utf-8')) @@ -82,11 +82,11 @@ class TestPetController(BaseTestCase): Update an existing pet """ - body = Pet() + pet = Pet() response = self.client.open( '/v2/pet', method='PUT', - data=json.dumps(body), + data=json.dumps(pet), content_type='application/json') self.assert200(response, 'Response body is : ' + response.data.decode('utf-8')) @@ -99,7 +99,7 @@ class TestPetController(BaseTestCase): data = dict(name='name_example', status='status_example') response = self.client.open( - '/v2/pet/{petId}'.format(petId=789), + '/v2/pet/{petId}'.format(pet_id=56), method='POST', data=data, content_type='application/x-www-form-urlencoded') @@ -111,10 +111,10 @@ class TestPetController(BaseTestCase): uploads an image """ - data = dict(additionalMetadata='additionalMetadata_example', + data = dict(additional_metadata='additional_metadata_example', file=(BytesIO(b'some file data'), 'file.txt')) response = self.client.open( - '/v2/pet/{petId}/uploadImage'.format(petId=789), + '/v2/pet/{petId}/uploadImage'.format(pet_id=56), method='POST', data=data, content_type='multipart/form-data') diff --git a/samples/server/petstore/flaskConnexion-python2/swagger_server/test/test_store_controller.py b/samples/server/petstore/flaskConnexion/openapi_server/test/test_store_controller.py similarity index 83% rename from samples/server/petstore/flaskConnexion-python2/swagger_server/test/test_store_controller.py rename to samples/server/petstore/flaskConnexion/openapi_server/test/test_store_controller.py index 854e18600fc..49d09e3596f 100644 --- a/samples/server/petstore/flaskConnexion-python2/swagger_server/test/test_store_controller.py +++ b/samples/server/petstore/flaskConnexion/openapi_server/test/test_store_controller.py @@ -5,8 +5,8 @@ from __future__ import absolute_import from flask import json from six import BytesIO -from swagger_server.models.order import Order # noqa: E501 -from swagger_server.test import BaseTestCase +from openapi_server.models.order import Order # noqa: E501 +from openapi_server.test import BaseTestCase class TestStoreController(BaseTestCase): @@ -18,7 +18,7 @@ class TestStoreController(BaseTestCase): Delete purchase order by ID """ response = self.client.open( - '/v2/store/order/{orderId}'.format(orderId='orderId_example'), + '/v2/store/order/{orderId}'.format(order_id='order_id_example'), method='DELETE') self.assert200(response, 'Response body is : ' + response.data.decode('utf-8')) @@ -40,7 +40,7 @@ class TestStoreController(BaseTestCase): Find purchase order by ID """ response = self.client.open( - '/v2/store/order/{orderId}'.format(orderId=5), + '/v2/store/order/{orderId}'.format(order_id=5), method='GET') self.assert200(response, 'Response body is : ' + response.data.decode('utf-8')) @@ -50,11 +50,11 @@ class TestStoreController(BaseTestCase): Place an order for a pet """ - body = Order() + order = Order() response = self.client.open( '/v2/store/order', method='POST', - data=json.dumps(body), + data=json.dumps(order), content_type='application/json') self.assert200(response, 'Response body is : ' + response.data.decode('utf-8')) diff --git a/samples/server/petstore/flaskConnexion-python2/swagger_server/test/test_user_controller.py b/samples/server/petstore/flaskConnexion/openapi_server/test/test_user_controller.py similarity index 91% rename from samples/server/petstore/flaskConnexion-python2/swagger_server/test/test_user_controller.py rename to samples/server/petstore/flaskConnexion/openapi_server/test/test_user_controller.py index 30e1885afab..69a8bc4594a 100644 --- a/samples/server/petstore/flaskConnexion-python2/swagger_server/test/test_user_controller.py +++ b/samples/server/petstore/flaskConnexion/openapi_server/test/test_user_controller.py @@ -5,8 +5,8 @@ from __future__ import absolute_import from flask import json from six import BytesIO -from swagger_server.models.user import User # noqa: E501 -from swagger_server.test import BaseTestCase +from openapi_server.models.user import User # noqa: E501 +from openapi_server.test import BaseTestCase class TestUserController(BaseTestCase): @@ -17,11 +17,11 @@ class TestUserController(BaseTestCase): Create user """ - body = User() + user = User() response = self.client.open( '/v2/user', method='POST', - data=json.dumps(body), + data=json.dumps(user), content_type='application/json') self.assert200(response, 'Response body is : ' + response.data.decode('utf-8')) @@ -31,11 +31,11 @@ class TestUserController(BaseTestCase): Creates list of users with given input array """ - body = [User()] + user = None response = self.client.open( '/v2/user/createWithArray', method='POST', - data=json.dumps(body), + data=json.dumps(user), content_type='application/json') self.assert200(response, 'Response body is : ' + response.data.decode('utf-8')) @@ -45,11 +45,11 @@ class TestUserController(BaseTestCase): Creates list of users with given input array """ - body = [User()] + user = None response = self.client.open( '/v2/user/createWithList', method='POST', - data=json.dumps(body), + data=json.dumps(user), content_type='application/json') self.assert200(response, 'Response body is : ' + response.data.decode('utf-8')) @@ -106,11 +106,11 @@ class TestUserController(BaseTestCase): Updated user """ - body = User() + user = User() response = self.client.open( '/v2/user/{username}'.format(username='username_example'), method='PUT', - data=json.dumps(body), + data=json.dumps(user), content_type='application/json') self.assert200(response, 'Response body is : ' + response.data.decode('utf-8')) diff --git a/samples/server/petstore/flaskConnexion-python2/swagger_server/util.py b/samples/server/petstore/flaskConnexion/openapi_server/util.py similarity index 97% rename from samples/server/petstore/flaskConnexion-python2/swagger_server/util.py rename to samples/server/petstore/flaskConnexion/openapi_server/util.py index 527d1424c3d..4321570d5a0 100644 --- a/samples/server/petstore/flaskConnexion-python2/swagger_server/util.py +++ b/samples/server/petstore/flaskConnexion/openapi_server/util.py @@ -100,10 +100,10 @@ def deserialize_model(data, klass): """ instance = klass() - if not instance.swagger_types: + if not instance.openapi_types: return data - for attr, attr_type in six.iteritems(instance.swagger_types): + for attr, attr_type in six.iteritems(instance.openapi_types): if data is not None \ and instance.attribute_map[attr] in data \ and isinstance(data, (list, dict)): diff --git a/samples/server/petstore/flaskConnexion/setup.py b/samples/server/petstore/flaskConnexion/setup.py index a7f6ac9e413..c8796a1f6e2 100644 --- a/samples/server/petstore/flaskConnexion/setup.py +++ b/samples/server/petstore/flaskConnexion/setup.py @@ -3,7 +3,7 @@ import sys from setuptools import setup, find_packages -NAME = "swagger_server" +NAME = "openapi_server" VERSION = "1.0.0" # To install the library, run the following @@ -18,18 +18,18 @@ REQUIRES = ["connexion"] setup( name=NAME, version=VERSION, - description="Swagger Petstore", - author_email="apiteam@swagger.io", + description="OpenAPI Petstore", + author_email="", url="", - keywords=["OpenAPI", "Swagger Petstore"], + keywords=["OpenAPI", "OpenAPI Petstore"], install_requires=REQUIRES, packages=find_packages(), package_data={'': ['openapi/openapi.yaml']}, include_package_data=True, entry_points={ - 'console_scripts': ['swagger_server=swagger_server.__main__:main']}, + 'console_scripts': ['openapi_server=openapi_server.__main__:main']}, long_description="""\ - This is a sample server Petstore server. You can find out more about Swagger at [http://swagger.io](http://swagger.io) or on [irc.freenode.net, #swagger](http://swagger.io/irc/). For this sample, you can use the api key `special-key` to test the authorization filters. + This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. """ ) diff --git a/samples/server/petstore/flaskConnexion/swagger_server/models/__init__.py b/samples/server/petstore/flaskConnexion/swagger_server/models/__init__.py deleted file mode 100644 index fcf8253348d..00000000000 --- a/samples/server/petstore/flaskConnexion/swagger_server/models/__init__.py +++ /dev/null @@ -1,11 +0,0 @@ -# coding: utf-8 - -# flake8: noqa -from __future__ import absolute_import -# import models into model package -from swagger_server.models.api_response import ApiResponse -from swagger_server.models.category import Category -from swagger_server.models.order import Order -from swagger_server.models.pet import Pet -from swagger_server.models.tag import Tag -from swagger_server.models.user import User