From 236a9697ad997ce22518b043669abc2a06e73fee Mon Sep 17 00:00:00 2001 From: Tony Tam Date: Sun, 23 Sep 2012 18:41:54 -0700 Subject: [PATCH] moved to client folder --- .../python/PythonPetstoreCodegen.scala | 16 - samples/petstore/python/README.md | 15 - samples/petstore/python/petstore/PetApi.py | 217 ------------ samples/petstore/python/petstore/StoreApi.py | 143 -------- samples/petstore/python/petstore/UserApi.py | 317 ------------------ samples/petstore/python/petstore/__init__.py | 10 - .../python/petstore/models/Category.py | 32 -- .../petstore/python/petstore/models/Order.py | 39 --- .../petstore/python/petstore/models/Pet.py | 41 --- .../petstore/python/petstore/models/Tag.py | 32 -- .../petstore/python/petstore/models/User.py | 45 --- .../python/petstore/models/__init__.py | 10 - samples/petstore/python/petstore/swagger.py | 200 ----------- samples/petstore/python/tests/BaseApiTest.py | 37 -- samples/petstore/python/tests/PetApiTest.py | 176 ---------- samples/petstore/python/tests/StoreApiTest.py | 36 -- samples/petstore/python/tests/UserApiTest.py | 225 ------------- 17 files changed, 1591 deletions(-) delete mode 100644 samples/petstore/python/PythonPetstoreCodegen.scala delete mode 100644 samples/petstore/python/README.md delete mode 100644 samples/petstore/python/petstore/PetApi.py delete mode 100644 samples/petstore/python/petstore/StoreApi.py delete mode 100644 samples/petstore/python/petstore/UserApi.py delete mode 100644 samples/petstore/python/petstore/__init__.py delete mode 100644 samples/petstore/python/petstore/models/Category.py delete mode 100644 samples/petstore/python/petstore/models/Order.py delete mode 100644 samples/petstore/python/petstore/models/Pet.py delete mode 100644 samples/petstore/python/petstore/models/Tag.py delete mode 100644 samples/petstore/python/petstore/models/User.py delete mode 100644 samples/petstore/python/petstore/models/__init__.py delete mode 100644 samples/petstore/python/petstore/swagger.py delete mode 100644 samples/petstore/python/tests/BaseApiTest.py delete mode 100644 samples/petstore/python/tests/PetApiTest.py delete mode 100644 samples/petstore/python/tests/StoreApiTest.py delete mode 100644 samples/petstore/python/tests/UserApiTest.py diff --git a/samples/petstore/python/PythonPetstoreCodegen.scala b/samples/petstore/python/PythonPetstoreCodegen.scala deleted file mode 100644 index f5d14174bf0..00000000000 --- a/samples/petstore/python/PythonPetstoreCodegen.scala +++ /dev/null @@ -1,16 +0,0 @@ -import com.wordnik.swagger.codegen.BasicPythonGenerator - -import com.wordnik.swagger.core._ - -import java.io.File - -object PythonPetstoreCodegen extends BasicPythonGenerator { - def main(args: Array[String]) = generateClient(args) - - override def destinationDir = "samples/petstore/python" - - override def supportingFiles = List( - ("__init__.mustache", destinationDir, "__init__.py"), - ("swagger.mustache", destinationDir + File.separator + apiPackage.get, "swagger.py"), - ("__init__.mustache", destinationDir + File.separator + modelPackage.get, "__init__.py")) -} diff --git a/samples/petstore/python/README.md b/samples/petstore/python/README.md deleted file mode 100644 index 12f0d6ae501..00000000000 --- a/samples/petstore/python/README.md +++ /dev/null @@ -1,15 +0,0 @@ -# Sample Petstore Python application - -Here's a Python 2.7 [Swagger](http://swagger.wordnik.com/) client with unit -tests for the Petstore sample application. See the interactive Swagger -documentation at http://petstore.swagger.wordnik.com/ for more information on - this demonstration API. - -The client contained in ```petstore``` was generated using this -```swagger-codegen``` project, with the following command: - - ./bin/runscala.sh com.wordnik.swagger.codegen.BasicPythonGenerator http://petstore.swagger.wordnik.com/api/resources.json special-key - -To run the tests, issue the following command: - - python tests/BaseApiTest.py \ No newline at end of file diff --git a/samples/petstore/python/petstore/PetApi.py b/samples/petstore/python/petstore/PetApi.py deleted file mode 100644 index bfdd663f0c7..00000000000 --- a/samples/petstore/python/petstore/PetApi.py +++ /dev/null @@ -1,217 +0,0 @@ -#!/usr/bin/env python -""" -WordAPI.py -Copyright 2012 Wordnik, Inc. - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - -NOTE: This class is auto generated by the swagger code generator program. Do not edit the class manually. -""" -import sys -import os - -from models import * - - -class PetApi(object): - - def __init__(self, apiClient): - self.apiClient = apiClient - - - def getPetById(self, petId, **kwargs): - """Find pet by ID - - Args: - petId, str: ID of pet that needs to be fetched (required) - - Returns: Pet - """ - - allParams = ['petId'] - - params = locals() - for (key, val) in params['kwargs'].iteritems(): - if key not in allParams: - raise TypeError("Got an unexpected keyword argument '%s' to method getPetById" % key) - params[key] = val - del params['kwargs'] - - resourcePath = '/pet.{format}/{petId}' - resourcePath = resourcePath.replace('{format}', 'json') - method = 'GET' - - queryParams = {} - headerParams = {} - - if ('petId' in params): - replacement = str(self.apiClient.toPathValue(params['petId'])) - resourcePath = resourcePath.replace('{' + 'petId' + '}', - replacement) - postData = (params['body'] if 'body' in params else None) - - response = self.apiClient.callAPI(resourcePath, method, queryParams, - postData, headerParams) - - if not response: - return None - - responseObject = self.apiClient.deserialize(response, 'Pet') - return responseObject - - - def addPet(self, body, **kwargs): - """Add a new pet to the store - - Args: - body, Pet: Pet object that needs to be added to the store (required) - - Returns: - """ - - allParams = ['body'] - - params = locals() - for (key, val) in params['kwargs'].iteritems(): - if key not in allParams: - raise TypeError("Got an unexpected keyword argument '%s' to method addPet" % key) - params[key] = val - del params['kwargs'] - - resourcePath = '/pet.{format}' - resourcePath = resourcePath.replace('{format}', 'json') - method = 'POST' - - queryParams = {} - headerParams = {} - - postData = (params['body'] if 'body' in params else None) - - response = self.apiClient.callAPI(resourcePath, method, queryParams, - postData, headerParams) - - - - def updatePet(self, body, **kwargs): - """Update an existing pet - - Args: - body, Pet: Pet object that needs to be updated in the store (required) - - Returns: - """ - - allParams = ['body'] - - params = locals() - for (key, val) in params['kwargs'].iteritems(): - if key not in allParams: - raise TypeError("Got an unexpected keyword argument '%s' to method updatePet" % key) - params[key] = val - del params['kwargs'] - - resourcePath = '/pet.{format}' - resourcePath = resourcePath.replace('{format}', 'json') - method = 'PUT' - - queryParams = {} - headerParams = {} - - postData = (params['body'] if 'body' in params else None) - - response = self.apiClient.callAPI(resourcePath, method, queryParams, - postData, headerParams) - - - - def findPetsByStatus(self, status, **kwargs): - """Finds Pets by status - - Args: - status, str: Status values that need to be considered for filter (required) - - Returns: list[Pet] - """ - - allParams = ['status'] - - params = locals() - for (key, val) in params['kwargs'].iteritems(): - if key not in allParams: - raise TypeError("Got an unexpected keyword argument '%s' to method findPetsByStatus" % key) - params[key] = val - del params['kwargs'] - - resourcePath = '/pet.{format}/findByStatus' - resourcePath = resourcePath.replace('{format}', 'json') - method = 'GET' - - queryParams = {} - headerParams = {} - - if ('status' in params): - queryParams['status'] = self.apiClient.toPathValue(params['status']) - postData = (params['body'] if 'body' in params else None) - - response = self.apiClient.callAPI(resourcePath, method, queryParams, - postData, headerParams) - - if not response: - return None - - responseObject = self.apiClient.deserialize(response, 'list[Pet]') - return responseObject - - - def findPetsByTags(self, tags, **kwargs): - """Finds Pets by tags - - Args: - tags, str: Tags to filter by (required) - - Returns: list[Pet] - """ - - allParams = ['tags'] - - params = locals() - for (key, val) in params['kwargs'].iteritems(): - if key not in allParams: - raise TypeError("Got an unexpected keyword argument '%s' to method findPetsByTags" % key) - params[key] = val - del params['kwargs'] - - resourcePath = '/pet.{format}/findByTags' - resourcePath = resourcePath.replace('{format}', 'json') - method = 'GET' - - queryParams = {} - headerParams = {} - - if ('tags' in params): - queryParams['tags'] = self.apiClient.toPathValue(params['tags']) - postData = (params['body'] if 'body' in params else None) - - response = self.apiClient.callAPI(resourcePath, method, queryParams, - postData, headerParams) - - if not response: - return None - - responseObject = self.apiClient.deserialize(response, 'list[Pet]') - return responseObject - - - - - diff --git a/samples/petstore/python/petstore/StoreApi.py b/samples/petstore/python/petstore/StoreApi.py deleted file mode 100644 index 7529b731b06..00000000000 --- a/samples/petstore/python/petstore/StoreApi.py +++ /dev/null @@ -1,143 +0,0 @@ -#!/usr/bin/env python -""" -WordAPI.py -Copyright 2012 Wordnik, Inc. - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - -NOTE: This class is auto generated by the swagger code generator program. Do not edit the class manually. -""" -import sys -import os - -from models import * - - -class StoreApi(object): - - def __init__(self, apiClient): - self.apiClient = apiClient - - - def getOrderById(self, orderId, **kwargs): - """Find purchase order by ID - - Args: - orderId, str: ID of pet that needs to be fetched (required) - - Returns: Order - """ - - allParams = ['orderId'] - - params = locals() - for (key, val) in params['kwargs'].iteritems(): - if key not in allParams: - raise TypeError("Got an unexpected keyword argument '%s' to method getOrderById" % key) - params[key] = val - del params['kwargs'] - - resourcePath = '/store.{format}/order/{orderId}' - resourcePath = resourcePath.replace('{format}', 'json') - method = 'GET' - - queryParams = {} - headerParams = {} - - if ('orderId' in params): - replacement = str(self.apiClient.toPathValue(params['orderId'])) - resourcePath = resourcePath.replace('{' + 'orderId' + '}', - replacement) - postData = (params['body'] if 'body' in params else None) - - response = self.apiClient.callAPI(resourcePath, method, queryParams, - postData, headerParams) - - if not response: - return None - - responseObject = self.apiClient.deserialize(response, 'Order') - return responseObject - - - def deleteOrder(self, orderId, **kwargs): - """Delete purchase order by ID - - Args: - orderId, str: ID of the order that needs to be deleted (required) - - Returns: - """ - - allParams = ['orderId'] - - params = locals() - for (key, val) in params['kwargs'].iteritems(): - if key not in allParams: - raise TypeError("Got an unexpected keyword argument '%s' to method deleteOrder" % key) - params[key] = val - del params['kwargs'] - - resourcePath = '/store.{format}/order/{orderId}' - resourcePath = resourcePath.replace('{format}', 'json') - method = 'DELETE' - - queryParams = {} - headerParams = {} - - if ('orderId' in params): - replacement = str(self.apiClient.toPathValue(params['orderId'])) - resourcePath = resourcePath.replace('{' + 'orderId' + '}', - replacement) - postData = (params['body'] if 'body' in params else None) - - response = self.apiClient.callAPI(resourcePath, method, queryParams, - postData, headerParams) - - - - def placeOrder(self, body, **kwargs): - """Place an order for a pet - - Args: - body, Order: order placed for purchasing the pet (required) - - Returns: - """ - - allParams = ['body'] - - params = locals() - for (key, val) in params['kwargs'].iteritems(): - if key not in allParams: - raise TypeError("Got an unexpected keyword argument '%s' to method placeOrder" % key) - params[key] = val - del params['kwargs'] - - resourcePath = '/store.{format}/order' - resourcePath = resourcePath.replace('{format}', 'json') - method = 'POST' - - queryParams = {} - headerParams = {} - - postData = (params['body'] if 'body' in params else None) - - response = self.apiClient.callAPI(resourcePath, method, queryParams, - postData, headerParams) - - - - - - diff --git a/samples/petstore/python/petstore/UserApi.py b/samples/petstore/python/petstore/UserApi.py deleted file mode 100644 index 25065076ef4..00000000000 --- a/samples/petstore/python/petstore/UserApi.py +++ /dev/null @@ -1,317 +0,0 @@ -#!/usr/bin/env python -""" -WordAPI.py -Copyright 2012 Wordnik, Inc. - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - -NOTE: This class is auto generated by the swagger code generator program. Do not edit the class manually. -""" -import sys -import os - -from models import * - - -class UserApi(object): - - def __init__(self, apiClient): - self.apiClient = apiClient - - - def createUsersWithArrayInput(self, body, **kwargs): - """Creates list of users with given input array - - Args: - body, list[User]: List of user object (required) - - Returns: - """ - - allParams = ['body'] - - params = locals() - for (key, val) in params['kwargs'].iteritems(): - if key not in allParams: - raise TypeError("Got an unexpected keyword argument '%s' to method createUsersWithArrayInput" % key) - params[key] = val - del params['kwargs'] - - resourcePath = '/user.{format}/createWithArray' - resourcePath = resourcePath.replace('{format}', 'json') - method = 'POST' - - queryParams = {} - headerParams = {} - - postData = (params['body'] if 'body' in params else None) - - response = self.apiClient.callAPI(resourcePath, method, queryParams, - postData, headerParams) - - - - def createUser(self, body, **kwargs): - """Create user - - Args: - body, User: Created user object (required) - - Returns: - """ - - allParams = ['body'] - - params = locals() - for (key, val) in params['kwargs'].iteritems(): - if key not in allParams: - raise TypeError("Got an unexpected keyword argument '%s' to method createUser" % key) - params[key] = val - del params['kwargs'] - - resourcePath = '/user.{format}' - resourcePath = resourcePath.replace('{format}', 'json') - method = 'POST' - - queryParams = {} - headerParams = {} - - postData = (params['body'] if 'body' in params else None) - - response = self.apiClient.callAPI(resourcePath, method, queryParams, - postData, headerParams) - - - - def createUsersWithListInput(self, body, **kwargs): - """Creates list of users with given list input - - Args: - body, List[User]: List of user object (required) - - Returns: - """ - - allParams = ['body'] - - params = locals() - for (key, val) in params['kwargs'].iteritems(): - if key not in allParams: - raise TypeError("Got an unexpected keyword argument '%s' to method createUsersWithListInput" % key) - params[key] = val - del params['kwargs'] - - resourcePath = '/user.{format}/createWithList' - resourcePath = resourcePath.replace('{format}', 'json') - method = 'POST' - - queryParams = {} - headerParams = {} - - postData = (params['body'] if 'body' in params else None) - - response = self.apiClient.callAPI(resourcePath, method, queryParams, - postData, headerParams) - - - - def updateUser(self, username, body, **kwargs): - """Updated user - - Args: - username, str: name that need to be deleted (required) - body, User: Updated user object (required) - - Returns: - """ - - allParams = ['username', 'body'] - - params = locals() - for (key, val) in params['kwargs'].iteritems(): - if key not in allParams: - raise TypeError("Got an unexpected keyword argument '%s' to method updateUser" % key) - params[key] = val - del params['kwargs'] - - resourcePath = '/user.{format}/{username}' - resourcePath = resourcePath.replace('{format}', 'json') - method = 'PUT' - - queryParams = {} - headerParams = {} - - if ('username' in params): - replacement = str(self.apiClient.toPathValue(params['username'])) - resourcePath = resourcePath.replace('{' + 'username' + '}', - replacement) - postData = (params['body'] if 'body' in params else None) - - response = self.apiClient.callAPI(resourcePath, method, queryParams, - postData, headerParams) - - - - def deleteUser(self, username, **kwargs): - """Delete user - - Args: - username, str: The name that needs to be deleted (required) - - Returns: - """ - - allParams = ['username'] - - params = locals() - for (key, val) in params['kwargs'].iteritems(): - if key not in allParams: - raise TypeError("Got an unexpected keyword argument '%s' to method deleteUser" % key) - params[key] = val - del params['kwargs'] - - resourcePath = '/user.{format}/{username}' - resourcePath = resourcePath.replace('{format}', 'json') - method = 'DELETE' - - queryParams = {} - headerParams = {} - - if ('username' in params): - replacement = str(self.apiClient.toPathValue(params['username'])) - resourcePath = resourcePath.replace('{' + 'username' + '}', - replacement) - postData = (params['body'] if 'body' in params else None) - - response = self.apiClient.callAPI(resourcePath, method, queryParams, - postData, headerParams) - - - - def getUserByName(self, username, **kwargs): - """Get user by user name - - Args: - username, str: The name that needs to be fetched. Use user1 for testing. (required) - - Returns: User - """ - - allParams = ['username'] - - params = locals() - for (key, val) in params['kwargs'].iteritems(): - if key not in allParams: - raise TypeError("Got an unexpected keyword argument '%s' to method getUserByName" % key) - params[key] = val - del params['kwargs'] - - resourcePath = '/user.{format}/{username}' - resourcePath = resourcePath.replace('{format}', 'json') - method = 'GET' - - queryParams = {} - headerParams = {} - - if ('username' in params): - replacement = str(self.apiClient.toPathValue(params['username'])) - resourcePath = resourcePath.replace('{' + 'username' + '}', - replacement) - postData = (params['body'] if 'body' in params else None) - - response = self.apiClient.callAPI(resourcePath, method, queryParams, - postData, headerParams) - - if not response: - return None - - responseObject = self.apiClient.deserialize(response, 'User') - return responseObject - - - def loginUser(self, username, password, **kwargs): - """Logs user into the system - - Args: - username, str: The user name for login (required) - password, str: The password for login in clear text (required) - - Returns: str - """ - - allParams = ['username', 'password'] - - params = locals() - for (key, val) in params['kwargs'].iteritems(): - if key not in allParams: - raise TypeError("Got an unexpected keyword argument '%s' to method loginUser" % key) - params[key] = val - del params['kwargs'] - - resourcePath = '/user.{format}/login' - resourcePath = resourcePath.replace('{format}', 'json') - method = 'GET' - - queryParams = {} - headerParams = {} - - if ('username' in params): - queryParams['username'] = self.apiClient.toPathValue(params['username']) - if ('password' in params): - queryParams['password'] = self.apiClient.toPathValue(params['password']) - postData = (params['body'] if 'body' in params else None) - - response = self.apiClient.callAPI(resourcePath, method, queryParams, - postData, headerParams) - - if not response: - return None - - responseObject = self.apiClient.deserialize(response, 'str') - return responseObject - - - def logoutUser(self, **kwargs): - """Logs out current logged in user session - - Args: - - Returns: - """ - - allParams = [] - - params = locals() - for (key, val) in params['kwargs'].iteritems(): - if key not in allParams: - raise TypeError("Got an unexpected keyword argument '%s' to method logoutUser" % key) - params[key] = val - del params['kwargs'] - - resourcePath = '/user.{format}/logout' - resourcePath = resourcePath.replace('{format}', 'json') - method = 'GET' - - queryParams = {} - headerParams = {} - - postData = (params['body'] if 'body' in params else None) - - response = self.apiClient.callAPI(resourcePath, method, queryParams, - postData, headerParams) - - - - - - diff --git a/samples/petstore/python/petstore/__init__.py b/samples/petstore/python/petstore/__init__.py deleted file mode 100644 index 39f84514fe9..00000000000 --- a/samples/petstore/python/petstore/__init__.py +++ /dev/null @@ -1,10 +0,0 @@ -#!/usr/bin/env python -"""Add all of the modules in the current directory to __all__""" -import os - -__all__ = [] - -for module in os.listdir(os.path.dirname(__file__)): - if module != '__init__.py' and module[-3:] == '.py': - __all__.append(module[:-3]) - diff --git a/samples/petstore/python/petstore/models/Category.py b/samples/petstore/python/petstore/models/Category.py deleted file mode 100644 index 465f6034066..00000000000 --- a/samples/petstore/python/petstore/models/Category.py +++ /dev/null @@ -1,32 +0,0 @@ -#!/usr/bin/env python -""" -Copyright 2012 Wordnik, Inc. - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -""" -class Category: - """NOTE: This class is auto generated by the swagger code generator program. - Do not edit the class manually.""" - - - def __init__(self): - self.swaggerTypes = { - 'id': 'long', - 'name': 'str' - - } - - - self.id = None # long - self.name = None # str - diff --git a/samples/petstore/python/petstore/models/Order.py b/samples/petstore/python/petstore/models/Order.py deleted file mode 100644 index 32b64ea5762..00000000000 --- a/samples/petstore/python/petstore/models/Order.py +++ /dev/null @@ -1,39 +0,0 @@ -#!/usr/bin/env python -""" -Copyright 2012 Wordnik, Inc. - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -""" -class Order: - """NOTE: This class is auto generated by the swagger code generator program. - Do not edit the class manually.""" - - - def __init__(self): - self.swaggerTypes = { - 'id': 'long', - 'petId': 'long', - 'status': 'str', - 'quantity': 'int', - 'shipDate': 'datetime' - - } - - - self.id = None # long - self.petId = None # long - #Order Status - self.status = None # str - self.quantity = None # int - self.shipDate = None # datetime - diff --git a/samples/petstore/python/petstore/models/Pet.py b/samples/petstore/python/petstore/models/Pet.py deleted file mode 100644 index ec389b89c43..00000000000 --- a/samples/petstore/python/petstore/models/Pet.py +++ /dev/null @@ -1,41 +0,0 @@ -#!/usr/bin/env python -""" -Copyright 2012 Wordnik, Inc. - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -""" -class Pet: - """NOTE: This class is auto generated by the swagger code generator program. - Do not edit the class manually.""" - - - def __init__(self): - self.swaggerTypes = { - 'id': 'long', - 'tags': 'list[Tag]', - 'category': 'Category', - 'status': 'str', - 'name': 'str', - 'photoUrls': 'list[str]' - - } - - - self.id = None # long - self.tags = None # list[Tag] - self.category = None # Category - #pet status in the store - self.status = None # str - self.name = None # str - self.photoUrls = None # list[str] - diff --git a/samples/petstore/python/petstore/models/Tag.py b/samples/petstore/python/petstore/models/Tag.py deleted file mode 100644 index 341f71c60ae..00000000000 --- a/samples/petstore/python/petstore/models/Tag.py +++ /dev/null @@ -1,32 +0,0 @@ -#!/usr/bin/env python -""" -Copyright 2012 Wordnik, Inc. - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -""" -class Tag: - """NOTE: This class is auto generated by the swagger code generator program. - Do not edit the class manually.""" - - - def __init__(self): - self.swaggerTypes = { - 'id': 'long', - 'name': 'str' - - } - - - self.id = None # long - self.name = None # str - diff --git a/samples/petstore/python/petstore/models/User.py b/samples/petstore/python/petstore/models/User.py deleted file mode 100644 index ad15a386f62..00000000000 --- a/samples/petstore/python/petstore/models/User.py +++ /dev/null @@ -1,45 +0,0 @@ -#!/usr/bin/env python -""" -Copyright 2012 Wordnik, Inc. - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -""" -class User: - """NOTE: This class is auto generated by the swagger code generator program. - Do not edit the class manually.""" - - - def __init__(self): - self.swaggerTypes = { - 'id': 'long', - 'lastName': 'str', - 'username': 'str', - 'phone': 'str', - 'email': 'str', - 'userStatus': 'int', - 'firstName': 'str', - 'password': 'str' - - } - - - self.id = None # long - self.lastName = None # str - self.username = None # str - self.phone = None # str - self.email = None # str - #User Status - self.userStatus = None # int - self.firstName = None # str - self.password = None # str - diff --git a/samples/petstore/python/petstore/models/__init__.py b/samples/petstore/python/petstore/models/__init__.py deleted file mode 100644 index 39f84514fe9..00000000000 --- a/samples/petstore/python/petstore/models/__init__.py +++ /dev/null @@ -1,10 +0,0 @@ -#!/usr/bin/env python -"""Add all of the modules in the current directory to __all__""" -import os - -__all__ = [] - -for module in os.listdir(os.path.dirname(__file__)): - if module != '__init__.py' and module[-3:] == '.py': - __all__.append(module[:-3]) - diff --git a/samples/petstore/python/petstore/swagger.py b/samples/petstore/python/petstore/swagger.py deleted file mode 100644 index ef3d5f9a44a..00000000000 --- a/samples/petstore/python/petstore/swagger.py +++ /dev/null @@ -1,200 +0,0 @@ -#!/usr/bin/env python -"""Wordnik.com's Swagger generic API client. This client handles the client- -server communication, and is invariant across implementations. Specifics of -the methods and models for each application are generated from the Swagger -templates.""" - -import sys -import os -import re -import urllib -import urllib2 -import httplib -import json -import datetime - -from models import * - - -class ApiClient: - """Generic API client for Swagger client library builds""" - - def __init__(self, apiKey=None, apiServer=None): - if apiKey == None: - raise Exception('You must pass an apiKey when instantiating the ' - 'APIClient') - self.apiKey = apiKey - self.apiServer = apiServer - self.cookie = None - - def callAPI(self, resourcePath, method, queryParams, postData, - headerParams=None): - - url = self.apiServer + resourcePath - headers = {} - if headerParams: - for param, value in headerParams.iteritems(): - headers[param] = value - - headers['Content-type'] = 'application/json' - headers['api_key'] = self.apiKey - - if self.cookie: - headers['Cookie'] = self.cookie - - data = None - - if method == 'GET': - - if queryParams: - # Need to remove None values, these should not be sent - sentQueryParams = {} - for param, value in queryParams.items(): - if value != None: - sentQueryParams[param] = value - url = url + '?' + urllib.urlencode(sentQueryParams) - - elif method in ['POST', 'PUT', 'DELETE']: - - if postData: - headers['Content-type'] = 'application/json' - data = self.sanitizeForSerialization(postData) - data = json.dumps(data) - - else: - raise Exception('Method ' + method + ' is not recognized.') - - request = MethodRequest(method=method, url=url, headers=headers, - data=data) - - # Make the request - response = urllib2.urlopen(request) - if 'Set-Cookie' in response.headers: - self.cookie = response.headers['Set-Cookie'] - string = response.read() - - try: - data = json.loads(string) - except ValueError: # PUT requests don't return anything - data = None - - return data - - def toPathValue(self, obj): - """Serialize a list to a CSV string, if necessary. - Args: - obj -- data object to be serialized - Returns: - string -- json serialization of object - """ - if type(obj) == list: - return ','.join(obj) - else: - return obj - - def sanitizeForSerialization(self, obj): - """Dump an object into JSON for POSTing.""" - - if not obj: - return None - elif type(obj) in [str, int, long, float, bool]: - return obj - elif type(obj) == list: - return [self.sanitizeForSerialization(subObj) for subObj in obj] - elif type(obj) == datetime.datetime: - return obj.isoformat() - else: - if type(obj) == dict: - objDict = obj - else: - objDict = obj.__dict__ - return {key: self.sanitizeForSerialization(val) - for (key, val) in objDict.iteritems() - if key != 'swaggerTypes'} - - if type(postData) == list: - # Could be a list of objects - if type(postData[0]) in safeToDump: - data = json.dumps(postData) - else: - data = json.dumps([datum.__dict__ for datum in postData]) - elif type(postData) not in safeToDump: - data = json.dumps(postData.__dict__) - - def deserialize(self, obj, objClass): - """Derialize a JSON string into an object. - - Args: - obj -- string or object to be deserialized - objClass -- class literal for deserialzied object, or string - of class name - Returns: - object -- deserialized object""" - - # Have to accept objClass as string or actual type. Type could be a - # native Python type, or one of the model classes. - if type(objClass) == str: - if 'list[' in objClass: - match = re.match('list\[(.*)\]', objClass) - subClass = match.group(1) - return [self.deserialize(subObj, subClass) for subObj in obj] - - if (objClass in ['int', 'float', 'long', 'dict', 'list', 'str']): - objClass = eval(objClass) - else: # not a native type, must be model class - objClass = eval(objClass + '.' + objClass) - - if objClass in [str, int, long, float, bool]: - return objClass(obj) - elif objClass == datetime: - # Server will always return a time stamp in UTC, but with - # trailing +0000 indicating no offset from UTC. So don't process - # last 5 characters. - return datetime.datetime.strptime(obj[:-5], - "%Y-%m-%dT%H:%M:%S.%f") - - instance = objClass() - - for attr, attrType in instance.swaggerTypes.iteritems(): - if attr in obj: - value = obj[attr] - if attrType in ['str', 'int', 'long', 'float', 'bool']: - attrType = eval(attrType) - try: - value = attrType(value) - except UnicodeEncodeError: - value = unicode(value) - setattr(instance, attr, value) - elif 'list[' in attrType: - match = re.match('list\[(.*)\]', attrType) - subClass = match.group(1) - subValues = [] - if not value: - setattr(instance, attr, None) - else: - for subValue in value: - subValues.append(self.deserialize(subValue, - subClass)) - setattr(instance, attr, subValues) - else: - setattr(instance, attr, self.deserialize(value, - objClass)) - - return instance - - -class MethodRequest(urllib2.Request): - - def __init__(self, *args, **kwargs): - """Construct a MethodRequest. Usage is the same as for - `urllib2.Request` except it also takes an optional `method` - keyword argument. If supplied, `method` will be used instead of - the default.""" - - if 'method' in kwargs: - self.method = kwargs.pop('method') - return urllib2.Request.__init__(self, *args, **kwargs) - - def get_method(self): - return getattr(self, 'method', urllib2.Request.get_method(self)) - diff --git a/samples/petstore/python/tests/BaseApiTest.py b/samples/petstore/python/tests/BaseApiTest.py deleted file mode 100644 index b2b0e37a196..00000000000 --- a/samples/petstore/python/tests/BaseApiTest.py +++ /dev/null @@ -1,37 +0,0 @@ -#!/usr/bin/env python -"""Unit tests for SwaggerPython Petstore sample app API client. - -Run all tests: - - python BaseApiTest.py - -""" - -import sys -import os -import unittest - -sys.path = ['./'] + sys.path -from petstore import * - - -class BaseApiTest(unittest.TestCase): - - def setUp(self): - self.apiKey = 'special-key' - self.apiUrl = 'http://petstore.swagger.wordnik.com/api' - self.username = 'test' - self.password = 'test' - - client = swagger.ApiClient(self.apiKey, self.apiUrl) - self.petApi = PetApi.PetApi(client) - self.storeApi = StoreApi.StoreApi(client) - self.userApi = UserApi.UserApi(client) - -if __name__ == "__main__": - - from PetApiTest import PetApiTest - from StoreApiTest import StoreApiTest - from UserApiTest import UserApiTest - - unittest.main() diff --git a/samples/petstore/python/tests/PetApiTest.py b/samples/petstore/python/tests/PetApiTest.py deleted file mode 100644 index 744d05cbf2b..00000000000 --- a/samples/petstore/python/tests/PetApiTest.py +++ /dev/null @@ -1,176 +0,0 @@ -#!/usr/bin/env python - -import sys -import unittest -import urllib2 -import json -import random - -from BaseApiTest import BaseApiTest - -sys.path = ['./'] + sys.path -from petstore import * -from petstore.models import * - - -class PetApiTest(BaseApiTest): - - @classmethod - def setUpClass(cls): - # super(PetApiTest, self).setUp() - cls.randomId = long(int(90000 * random.random()) + 10000) - - def testPetApis(self): - response = urllib2.urlopen(self.apiUrl + '/pet.json') - doc = json.loads(response.read()) - assert len(doc['apis']) == 3, 'there should be 3 pet apis' - - def testPetApisAuthenticated(self): - response = urllib2.urlopen(self.apiUrl + '/pet.json?' + - 'api_key=special-key') - doc = json.loads(response.read()) - assert len(doc['apis']) == 4, 'there should be 4 pet apis when' + \ - 'authenticated' - - def testGetPetById(self): - res = self.petApi.getPetById(1) - assert res, 'null getWord result' - assert res.id == 1, 'pet id should be 1' - - def testAddPet(self): - pet = Pet.Pet() - - pet.id = self.randomId - tag1 = Tag.Tag() - tag1.name = "tag1" - tag2 = Tag.Tag() - tag2.name = "some tag" - pet.tags = [tag1, tag2] - category = Category.Category() - category.name = "Cats" - pet.category = category - pet.status = "sold" - pet.name = "Shermie" - pet.photoUrls = ["http://foo.com/1.jpg", "http://foo.com/1.jpg"] - self.petApi.addPet(pet) - - new_pet = self.petApi.getPetById(pet.id) - - assert new_pet.id == pet.id, 'ids should match' - assert new_pet.name == pet.name, 'names should match' - assert(set([tag.name for tag in new_pet.tags]) == - set([tag.name for tag in pet.tags])), 'tags should match' - assert new_pet.status == pet.status, 'status should match' - assert new_pet.category.name == pet.category.name, 'category should match' - assert new_pet.photoUrls == pet.photoUrls, 'photoUrls should match' - - def testUpdatePet(self): - alpahbet = list('ABCDEFGHIJKLMNOPQRSTUVWXYZ') - - pet = Pet.Pet() - pet.id = self.randomId - - tag1 = Tag.Tag() - tag1.name = "special-tag" - tag2 = Tag.Tag() - random.shuffle(alpahbet) - tag2.name = ''.join(alpahbet) - pet.tags = [tag1, tag2] - category = Category.Category() - random.shuffle(alpahbet) - category.name = ''.join(alpahbet) - pet.category = category - pet.status = "sold" - random.shuffle(alpahbet) - pet.name = ''.join(alpahbet) - pet.photoUrls = ["http://foo.com/22.jpg", "http://foo.com/55.jpg"] - self.petApi.updatePet(pet) - - updated_pet = self.petApi.getPetById(pet.id) - - assert updated_pet.id == pet.id, 'ids should match' - assert updated_pet.name == pet.name, 'names should match' - assert(set([tag.name for tag in updated_pet.tags]) == - set([tag.name for tag in pet.tags])), 'tags should match' - assert updated_pet.status == pet.status, 'status should match' - assert updated_pet.category.name == pet.category.name, 'category should match' - assert updated_pet.photoUrls == pet.photoUrls, 'photoUrls should match' - - def testFindPetsByTags(self): - pet = Pet.Pet() - pet.id = self.randomId - - tag1 = Tag.Tag() - tag1.name = "special-tag" - pet.tags = [tag1] - self.petApi.updatePet(pet) - - res = self.petApi.findPetsByTags("special-tag") - assert self.randomId in [pet.id for pet in res], 'must find by tag' - - def testFindPetsByStatus(self): - pet = Pet.Pet() - pet.id = self.randomId - - tag1 = Tag.Tag() - tag1.name = "special-tag" - pet.status = "sold" - self.petApi.updatePet(pet) - - res = self.petApi.findPetsByStatus("sold") - assert self.randomId in [pet.id for pet in res], 'must find by status' - - # def testGetWordWithCanonicalForm(self): - # res = self.wordApi.getWord('cAt', useCanonical=True) - # assert res, 'null getWord result' - # assert res.word == 'cat', 'word should be "cAt"' - - # def testGetDefinitions(self): - # res = self.wordApi.getDefinitions('cat', limit=10) - # assert res, 'null getDefinitions result' - # assert len(res) == 10, 'should have 10 definitions' - - # def testGetExamples(self): - # res = self.wordApi.getExamples('cat', limit=5) - # assert res, 'null getExamples result' - # assert len(res.examples) == 5, 'should have 5 definitions' - - # def testGetTopExample(self): - # res = self.wordApi.getTopExample('cat') - # assert res, 'null getTopExample result' - # assert res.word == 'cat', 'word should be "cat"' - - # # def testGetTextPronunciations(self): - # # res = self.wordApi.getTextPronunciations('cat') - # # assert res, 'null getTextPronunciations result' - # # assert len(res) == 2, 'should have 2 prons for "cat"' - - # def testGetHyphenation(self): - # res = self.wordApi.getHyphenation('catalog', limit=1) - # assert res, 'null getHyphenation result' - # assert len(res) == 1, 'hypenation length should be 1' - - # def testGetWordFrequency(self): - # res = self.wordApi.getWordFrequency('cat') - # assert res, 'null getWordFrequency result' - # assert res.totalCount != 0, 'total count should not be 0' - - # def testGetPhrases(self): - # res = self.wordApi.getPhrases('money') - # assert res, 'null getPhrases result' - # assert len(res) != 0, 'getPhrases length should not be 0' - - # def testGetRelatedWords(self): - # res = self.wordApi.getRelatedWords('cat') - # assert res, 'null getRelatedWords result' - # for related in res: - # assert len(related.words) <= 10, 'should have <= 10 related words' - - # def testGetAudio(self): - # res = self.wordApi.getAudio('cat', useCanonical=True, limit=2) - # assert res, 'null getAudio result' - # assert len(res) == 2, 'getAudio size should be 2' - - -if __name__ == "__main__": - unittest.main() diff --git a/samples/petstore/python/tests/StoreApiTest.py b/samples/petstore/python/tests/StoreApiTest.py deleted file mode 100644 index 6e3b1a05327..00000000000 --- a/samples/petstore/python/tests/StoreApiTest.py +++ /dev/null @@ -1,36 +0,0 @@ -#!/usr/bin/env python - -import sys -import unittest -import datetime - -from BaseApiTest import BaseApiTest - -sys.path = ['./'] + sys.path -from petstore import * -from petstore.models import * - - -class StoreApiTest(BaseApiTest): - - def testGetOrderById(self): - res = self.storeApi.getOrderById(1) - assert res, 'null getOrderById result' - assert long(1) == res.id, 'order id should be long(1)' - - def testDeleteOrder(self): - self.storeApi.deleteOrder(3) - self.storeApi.deleteOrder("foo") - - def testPlaceOrder(self): - order = Order.Order() - order.petId = 1 - order.status = 'ordered' - order.quantity = 10 - order.shipDate = datetime.datetime.strptime("2011-01-09T13:55:07.123", - "%Y-%m-%dT%H:%M:%S.%f") - self.storeApi.placeOrder(order) - - -if __name__ == "__main__": - unittest.main() diff --git a/samples/petstore/python/tests/UserApiTest.py b/samples/petstore/python/tests/UserApiTest.py deleted file mode 100644 index 131d9edb600..00000000000 --- a/samples/petstore/python/tests/UserApiTest.py +++ /dev/null @@ -1,225 +0,0 @@ -#!/usr/bin/env python -import sys -import unittest -import random -import urllib2 - -from BaseApiTest import BaseApiTest - -sys.path = ['./'] + sys.path -from petstore import * -from petstore.models import * - - -def randomString(): - return str(int(random.random() * 100000)) - - -class UserApiTest(BaseApiTest): - - @classmethod - def setUpClass(cls): - alpahbet = list('ABCDEFGHIJKLMNOPQRSTUVWXYZ') - random.shuffle(alpahbet) - cls.randomUsername1 = ''.join(alpahbet) - random.shuffle(alpahbet) - cls.randomUsername2 = ''.join(alpahbet) - random.shuffle(alpahbet) - cls.randomUsername3 = ''.join(alpahbet) - random.shuffle(alpahbet) - cls.randomUsername4 = ''.join(alpahbet) - random.shuffle(alpahbet) - cls.randomUsername5 = ''.join(alpahbet) - - def testCreateUsersWithArrayInput(self): - - user = User.User() - - user.id = long(randomString()) - user.lastName = randomString() - user.username = self.randomUsername1 - user.phone = randomString() - user.email = randomString() - user.userStatus = int(randomString()) - user.firstName = randomString() - user.password = randomString() - - otherUser = User.User() - - otherUser.id = long(randomString()) - otherUser.lastName = randomString() - otherUser.username = self.randomUsername2 - otherUser.phone = randomString() - otherUser.email = randomString() - otherUser.userStatus = int(randomString()) - otherUser.firstName = randomString() - otherUser.password = randomString() - - users = [user, otherUser] - self.userApi.createUsersWithArrayInput(users) - - newUser = self.userApi.getUserByName(self.randomUsername1) - - assert newUser.id == user.id, 'id matches user' - assert newUser.lastName == user.lastName, 'lastName matches user' - assert newUser.username == user.username, 'username matches user' - assert newUser.phone == user.phone, 'phone matches user' - assert newUser.email == user.email, 'email matches user' - assert newUser.userStatus == user.userStatus, 'status matches user' - assert newUser.firstName == user.firstName, 'firstName matches user' - assert newUser.password == user.password, 'password matches user' - - newUser = self.userApi.getUserByName(self.randomUsername2) - - assert newUser.id == otherUser.id, 'id matches user' - assert newUser.lastName == otherUser.lastName, 'lastName matches user' - assert newUser.username == otherUser.username, 'username matches user' - assert newUser.phone == otherUser.phone, 'phone matches user' - assert newUser.email == otherUser.email, 'email matches user' - assert newUser.userStatus == otherUser.userStatus, 'status matches user' - assert newUser.firstName == otherUser.firstName, 'firstName matches user' - assert newUser.password == otherUser.password, 'password matches user' - - def testCreateUsersWithListInput(self): - - user = User.User() - - user.id = long(randomString()) - user.lastName = randomString() - user.username = self.randomUsername3 - user.phone = randomString() - user.email = randomString() - user.userStatus = int(randomString()) - user.firstName = randomString() - user.password = randomString() - - otherUser = User.User() - - otherUser.id = long(randomString()) - otherUser.lastName = randomString() - otherUser.username = self.randomUsername4 - otherUser.phone = randomString() - otherUser.email = randomString() - otherUser.userStatus = int(randomString()) - otherUser.firstName = randomString() - otherUser.password = randomString() - - users = [user, otherUser] - self.userApi.createUsersWithListInput(users) - - newUser = self.userApi.getUserByName(self.randomUsername3) - - assert newUser.id == user.id, 'id matches user' - assert newUser.lastName == user.lastName, 'lastName matches user' - assert newUser.username == user.username, 'username matches user' - assert newUser.phone == user.phone, 'phone matches user' - assert newUser.email == user.email, 'email matches user' - assert newUser.userStatus == user.userStatus, 'status matches user' - assert newUser.firstName == user.firstName, 'firstName matches user' - assert newUser.password == user.password, 'password matches user' - - newUser = self.userApi.getUserByName(self.randomUsername4) - - assert newUser.id == otherUser.id, 'id matches user' - assert newUser.lastName == otherUser.lastName, 'lastName matches user' - assert newUser.username == otherUser.username, 'username matches user' - assert newUser.phone == otherUser.phone, 'phone matches user' - assert newUser.email == otherUser.email, 'email matches user' - assert newUser.userStatus == otherUser.userStatus, 'status matches user' - assert newUser.firstName == otherUser.firstName, 'firstName matches user' - assert newUser.password == otherUser.password, 'password matches user' - - def testCreateUser(self): - - user = User.User() - - user.id = long(randomString()) - user.lastName = randomString() - user.username = self.randomUsername5 - user.phone = randomString() - user.email = randomString() - user.userStatus = int(randomString()) - user.firstName = randomString() - user.password = randomString() - - self.userApi.createUser(user) - - newUser = self.userApi.getUserByName(self.randomUsername5) - - assert newUser.id, user.id - assert newUser.lastName, user.lastName - assert newUser.username, user.username - assert newUser.phone, user.phone - assert newUser.email, user.email - assert newUser.userStatus, user.userStatus - assert newUser.firstName, user.firstName - assert newUser.password, user.password - - def testUpdateUser(self): - - user = User.User() - username = randomString() - user.id = long(randomString()) - user.lastName = randomString() - user.username = username - user.phone = randomString() - user.email = randomString() - user.userStatus = int(randomString()) - user.firstName = randomString() - user.password = randomString() - - self.userApi.createUser(user) - - user = self.userApi.getUserByName(username) - - user.lastName = randomString() - user.phone = randomString() - user.email = randomString() - user.userStatus = int(randomString()) - user.firstName = randomString() - user.password = randomString() - - self.userApi.updateUser(username, user) - - updatedUser = self.userApi.getUserByName(username) - - assert updatedUser.lastName == user.lastName, 'should match lastName' - assert updatedUser.username == user.username, 'should match username' - assert updatedUser.phone == user.phone, 'should match phone' - assert updatedUser.email == user.email, 'should match email' - assert updatedUser.userStatus == user.userStatus, 'should match status' - assert updatedUser.firstName == user.firstName, 'should match firstName' - assert updatedUser.password == user.password, 'should match password' - - def testDeleteUser(self): - - user = User.User() - username = randomString() - user.username = username - - self.userApi.createUser(user) - - self.userApi.deleteUser(username) - - userGone = False - - try: - self.userApi.getUserByName(username) - except urllib2.HTTPError: - userGone = True - - assert userGone, 'user should be deleted' - - def testLoginUser(self): - - res = self.userApi.loginUser("anyusername", "anypassword") - - assert res[:23] == "logged in user session:", 'should get session' - - def testLogoutUser(self): - # We just want to make sure there are no errors in this test. - self.userApi.logoutUser() - - -if __name__ == "__main__": - unittest.main()