[Python] Add Flag to Allow Ignoring Operation Servers (#18981)

* [Python] Add Flag to Allow Ignoring Operation Servers

* generate samples

* add tests
This commit is contained in:
Cameron Koegel
2024-06-26 03:08:13 -04:00
committed by GitHub
parent 38d189b159
commit 0d05ee35f0
13 changed files with 108 additions and 5 deletions

View File

@@ -8,6 +8,7 @@ import weakref
from tests.util import async_test
import petstore_api
HOST = 'http://localhost/v2'
class TestApiClient(unittest.TestCase):
@@ -20,3 +21,31 @@ class TestApiClient(unittest.TestCase):
rest_pool_ref = client.rest_client.pool_manager
self.assertTrue(rest_pool_ref.closed)
@async_test
async def test_ignore_operation_servers(self):
config = petstore_api.Configuration(host=HOST)
client = petstore_api.ApiClient(config)
user_api_instance = petstore_api.api.user_api.UserApi(client)
config_ignore = petstore_api.Configuration(host=HOST, ignore_operation_servers=True)
client_ignore = petstore_api.ApiClient(config_ignore)
user_api_instance_ignore = petstore_api.api.user_api.UserApi(client_ignore)
params_to_serialize = {
'user': petstore_api.User(id=1, username='test'),
'_request_auth': None,
'_content_type': 'application/json',
'_headers': None,
'_host_index': 0
}
# operation servers should be used
_, url, *_ = user_api_instance._create_user_serialize(**params_to_serialize)
self.assertEqual(client.configuration.host, HOST)
self.assertEqual(url, 'http://petstore.swagger.io/v2/user')
# operation servers should be ignored
_, url_ignore, *_ = user_api_instance_ignore._create_user_serialize(**params_to_serialize)
self.assertEqual(client.configuration.host, HOST)
self.assertEqual(url_ignore, HOST + '/user')