Merge "Pass kwargs through to the adapter"
This commit is contained in:
commit
2494e0fc6f
novaclient
@ -720,11 +720,11 @@ def _construct_http_client(username=None, password=None, project_id=None,
|
||||
auth_token=None, cacert=None, tenant_id=None,
|
||||
user_id=None, connection_pool=False, session=None,
|
||||
auth=None, user_agent='python-novaclient',
|
||||
**kwargs):
|
||||
interface=None, **kwargs):
|
||||
if session:
|
||||
return SessionClient(session=session,
|
||||
auth=auth,
|
||||
interface=endpoint_type,
|
||||
interface=interface or endpoint_type,
|
||||
service_type=service_type,
|
||||
region_name=region_name,
|
||||
service_name=service_name,
|
||||
|
45
novaclient/tests/v1_1/test_client.py
Normal file
45
novaclient/tests/v1_1/test_client.py
Normal file
@ -0,0 +1,45 @@
|
||||
# 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.
|
||||
|
||||
import uuid
|
||||
|
||||
from keystoneclient import session
|
||||
|
||||
from novaclient.tests import utils
|
||||
from novaclient.v1_1 import client
|
||||
|
||||
|
||||
class ClientTest(utils.TestCase):
|
||||
|
||||
def test_adapter_properties(self):
|
||||
# sample of properties, there are many more
|
||||
user_agent = uuid.uuid4().hex
|
||||
endpoint_override = uuid.uuid4().hex
|
||||
|
||||
s = session.Session()
|
||||
c = client.Client(session=s,
|
||||
user_agent=user_agent,
|
||||
endpoint_override=endpoint_override)
|
||||
|
||||
self.assertEqual(user_agent, c.client.user_agent)
|
||||
self.assertEqual(endpoint_override, c.client.endpoint_override)
|
||||
|
||||
def test_passing_interface(self):
|
||||
endpoint_type = uuid.uuid4().hex
|
||||
interface = uuid.uuid4().hex
|
||||
|
||||
s = session.Session()
|
||||
c = client.Client(session=s,
|
||||
interface=interface,
|
||||
endpoint_type=endpoint_type)
|
||||
|
||||
self.assertEqual(interface, c.client.interface)
|
@ -103,7 +103,7 @@ class Client(object):
|
||||
auth_system='keystone', auth_plugin=None, auth_token=None,
|
||||
cacert=None, tenant_id=None, user_id=None,
|
||||
connection_pool=False, session=None, auth=None,
|
||||
completion_cache=None):
|
||||
completion_cache=None, **kwargs):
|
||||
# FIXME(comstud): Rename the api_key argument above when we
|
||||
# know it's not being used as keyword argument
|
||||
|
||||
@ -192,7 +192,8 @@ class Client(object):
|
||||
cacert=cacert,
|
||||
connection_pool=connection_pool,
|
||||
session=session,
|
||||
auth=auth)
|
||||
auth=auth,
|
||||
**kwargs)
|
||||
|
||||
self.completion_cache = completion_cache
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user