From c1141ed5be72ee169a7640b5d4957bfe02ad37ce Mon Sep 17 00:00:00 2001 From: Steve Martinelli Date: Sat, 29 Oct 2016 18:05:26 +0200 Subject: [PATCH] move old oslo-incubator code out of openstack/common As part of the first community-wide goal, teams were asked to remove the openstack/common package of their projects if one existed. This was a byproduct of the old oslo-incubator form of syncing common functionality. The package, apiclient, was moved to a top level location and a new i18n module was created. There is no oslo.apiclient library or equivalent, the recommended solution is to move it in tree and maintain it there. Change-Id: Ia788313e0926dc872a87b090ef0a350898bfb079 --- .../{openstack => apiclient}/__init__.py | 0 .../{openstack/common => }/apiclient/auth.py | 13 +++--- .../{openstack/common => }/apiclient/base.py | 9 ++-- .../common => }/apiclient/client.py | 6 +-- .../common => }/apiclient/exceptions.py | 8 ++-- .../common => }/apiclient/fake_client.py | 11 ++--- .../{openstack/common => }/apiclient/utils.py | 4 +- ceilometerclient/client.py | 6 +-- ceilometerclient/common/base.py | 4 +- ceilometerclient/i18n.py | 37 +++++++++++++++ ceilometerclient/openstack/common/__init__.py | 0 ceilometerclient/openstack/common/_i18n.py | 45 ------------------- .../openstack/common/apiclient/__init__.py | 0 ceilometerclient/tests/unit/test_client.py | 10 ++--- ceilometerclient/tests/unit/test_shell.py | 2 +- ceilometerclient/tests/unit/v2/test_alarms.py | 4 +- .../tests/unit/v2/test_capabilities.py | 4 +- .../tests/unit/v2/test_event_types.py | 4 +- ceilometerclient/tests/unit/v2/test_events.py | 4 +- .../tests/unit/v2/test_query_alarm_history.py | 4 +- .../tests/unit/v2/test_query_alarms.py | 4 +- .../tests/unit/v2/test_query_samples.py | 4 +- .../tests/unit/v2/test_resources.py | 4 +- .../tests/unit/v2/test_samples.py | 4 +- ceilometerclient/tests/unit/v2/test_shell.py | 10 ++--- .../tests/unit/v2/test_statistics.py | 4 +- .../tests/unit/v2/test_trait_descriptions.py | 4 +- ceilometerclient/tests/unit/v2/test_traits.py | 4 +- tox.ini | 4 ++ 29 files changed, 102 insertions(+), 115 deletions(-) rename ceilometerclient/{openstack => apiclient}/__init__.py (100%) rename ceilometerclient/{openstack/common => }/apiclient/auth.py (96%) rename ceilometerclient/{openstack/common => }/apiclient/base.py (99%) rename ceilometerclient/{openstack/common => }/apiclient/client.py (98%) rename ceilometerclient/{openstack/common => }/apiclient/exceptions.py (98%) rename ceilometerclient/{openstack/common => }/apiclient/fake_client.py (97%) rename ceilometerclient/{openstack/common => }/apiclient/utils.py (96%) create mode 100644 ceilometerclient/i18n.py delete mode 100644 ceilometerclient/openstack/common/__init__.py delete mode 100644 ceilometerclient/openstack/common/_i18n.py delete mode 100644 ceilometerclient/openstack/common/apiclient/__init__.py diff --git a/ceilometerclient/openstack/__init__.py b/ceilometerclient/apiclient/__init__.py similarity index 100% rename from ceilometerclient/openstack/__init__.py rename to ceilometerclient/apiclient/__init__.py diff --git a/ceilometerclient/openstack/common/apiclient/auth.py b/ceilometerclient/apiclient/auth.py similarity index 96% rename from ceilometerclient/openstack/common/apiclient/auth.py rename to ceilometerclient/apiclient/auth.py index 3cf0e202..41d118fc 100644 --- a/ceilometerclient/openstack/common/apiclient/auth.py +++ b/ceilometerclient/apiclient/auth.py @@ -37,7 +37,7 @@ import os import six from stevedore import extension -from ceilometerclient.openstack.common.apiclient import exceptions +from ceilometerclient.apiclient import exceptions _discovered_plugins = {} @@ -54,7 +54,7 @@ def discover_auth_systems(): def add_plugin(ext): _discovered_plugins[ext.name] = ext.plugin - ep_namespace = "ceilometerclient.openstack.common.apiclient.auth" + ep_namespace = "ceilometerclient.apiclient.auth" mgr = extension.ExtensionManager(ep_namespace) mgr.map(add_plugin) @@ -156,8 +156,7 @@ class BaseAuthPlugin(object): @classmethod def add_opts(cls, parser): - """Populate the parser with the options for this plugin. - """ + """Populate the parser with the options for this plugin.""" for opt in cls.opt_names: # use `BaseAuthPlugin.common_opt_names` since it is never # changed in child classes @@ -166,8 +165,7 @@ class BaseAuthPlugin(object): @classmethod def add_common_opts(cls, parser): - """Add options that are common for several plugins. - """ + """Add options that are common for several plugins.""" for opt in cls.common_opt_names: cls._parser_add_opt(parser, opt) @@ -204,8 +202,7 @@ class BaseAuthPlugin(object): @abc.abstractmethod def _do_authenticate(self, http_client): - """Protected method for authentication. - """ + """Protected method for authentication.""" def sufficient_options(self): """Check if all required options are present. diff --git a/ceilometerclient/openstack/common/apiclient/base.py b/ceilometerclient/apiclient/base.py similarity index 99% rename from ceilometerclient/openstack/common/apiclient/base.py rename to ceilometerclient/apiclient/base.py index 3e5dc225..6e9990ac 100644 --- a/ceilometerclient/openstack/common/apiclient/base.py +++ b/ceilometerclient/apiclient/base.py @@ -40,13 +40,13 @@ Base utilities to build API operation managers and objects on top of. import abc import copy +from oslo_utils import reflection from oslo_utils import strutils import six from six.moves.urllib import parse -from oslo_utils import reflection -from ceilometerclient.openstack.common._i18n import _ -from ceilometerclient.openstack.common.apiclient import exceptions +from ceilometerclient.apiclient import exceptions +from ceilometerclient.i18n import _ def getid(obj): @@ -470,8 +470,7 @@ class Resource(object): @property def human_id(self): - """Human-readable ID which can be used for bash completion. - """ + """Human-readable ID which can be used for bash completion.""" if self.HUMAN_ID: name = getattr(self, self.NAME_ATTR, None) if name is not None: diff --git a/ceilometerclient/openstack/common/apiclient/client.py b/ceilometerclient/apiclient/client.py similarity index 98% rename from ceilometerclient/openstack/common/apiclient/client.py rename to ceilometerclient/apiclient/client.py index 5a13753c..db041f2e 100644 --- a/ceilometerclient/openstack/common/apiclient/client.py +++ b/ceilometerclient/apiclient/client.py @@ -38,8 +38,8 @@ from oslo_utils import encodeutils from oslo_utils import importutils import requests -from ceilometerclient.openstack.common._i18n import _ -from ceilometerclient.openstack.common.apiclient import exceptions +from ceilometerclient.apiclient import exceptions +from ceilometerclient.i18n import _ _logger = logging.getLogger(__name__) SENSITIVE_HEADERS = ('X-Auth-Token', 'X-Subject-Token',) @@ -64,7 +64,7 @@ class HTTPClient(object): into terminal and send the same request with curl. """ - user_agent = "ceilometerclient.openstack.common.apiclient" + user_agent = "ceilometerclient.apiclient" def __init__(self, auth_plugin, diff --git a/ceilometerclient/openstack/common/apiclient/exceptions.py b/ceilometerclient/apiclient/exceptions.py similarity index 98% rename from ceilometerclient/openstack/common/apiclient/exceptions.py rename to ceilometerclient/apiclient/exceptions.py index 15a830af..68b98ca1 100644 --- a/ceilometerclient/openstack/common/apiclient/exceptions.py +++ b/ceilometerclient/apiclient/exceptions.py @@ -38,12 +38,11 @@ import sys import six -from ceilometerclient.openstack.common._i18n import _ +from ceilometerclient.i18n import _ class ClientException(Exception): - """The base exception class for all exceptions this library raises. - """ + """The base exception class for all exceptions this library raises.""" pass @@ -118,8 +117,7 @@ class AmbiguousEndpoints(EndpointException): class HttpError(ClientException): - """The base exception class for all HTTP exceptions. - """ + """The base exception class for all HTTP exceptions.""" http_status = 0 message = _("HTTP Error") diff --git a/ceilometerclient/openstack/common/apiclient/fake_client.py b/ceilometerclient/apiclient/fake_client.py similarity index 97% rename from ceilometerclient/openstack/common/apiclient/fake_client.py rename to ceilometerclient/apiclient/fake_client.py index 289b4bad..30a0731f 100644 --- a/ceilometerclient/openstack/common/apiclient/fake_client.py +++ b/ceilometerclient/apiclient/fake_client.py @@ -43,7 +43,7 @@ import requests import six from six.moves.urllib import parse -from ceilometerclient.openstack.common.apiclient import client +from ceilometerclient.apiclient import client def assert_has_keys(dct, required=None, optional=None): @@ -59,8 +59,7 @@ def assert_has_keys(dct, required=None, optional=None): class TestResponse(requests.Response): - """Wrap requests.Response and provide a convenient initialization. - """ + """Wrap requests.Response and provide a convenient initialization.""" def __init__(self, data): super(TestResponse, self).__init__() @@ -99,8 +98,7 @@ class FakeHTTPClient(client.HTTPClient): super(FakeHTTPClient, self).__init__(*args, **kwargs) def assert_called(self, method, url, body=None, pos=-1): - """Assert than an API method was just called. - """ + """Assert than an API method was just called.""" expected = (method, url) called = self.callstack[pos][0:2] assert self.callstack, \ @@ -115,8 +113,7 @@ class FakeHTTPClient(client.HTTPClient): (self.callstack[pos][3], body)) def assert_called_anytime(self, method, url, body=None): - """Assert than an API method was called anytime in the test. - """ + """Assert than an API method was called anytime in the test.""" expected = (method, url) assert self.callstack, \ diff --git a/ceilometerclient/openstack/common/apiclient/utils.py b/ceilometerclient/apiclient/utils.py similarity index 96% rename from ceilometerclient/openstack/common/apiclient/utils.py rename to ceilometerclient/apiclient/utils.py index f1ac6fae..2f45b928 100644 --- a/ceilometerclient/openstack/common/apiclient/utils.py +++ b/ceilometerclient/apiclient/utils.py @@ -28,8 +28,8 @@ from oslo_utils import encodeutils from oslo_utils import uuidutils import six -from ceilometerclient.openstack.common._i18n import _ -from ceilometerclient.openstack.common.apiclient import exceptions +from ceilometerclient.apiclient import exceptions +from ceilometerclient.i18n import _ def find_resource(manager, name_or_id, **find_args): diff --git a/ceilometerclient/client.py b/ceilometerclient/client.py index 30fbe4f3..7e4f1c0d 100644 --- a/ceilometerclient/client.py +++ b/ceilometerclient/client.py @@ -23,10 +23,10 @@ from oslo_utils import importutils from oslo_utils import strutils import six.moves.urllib.parse as urlparse +from ceilometerclient.apiclient import auth +from ceilometerclient.apiclient import client +from ceilometerclient.apiclient import exceptions from ceilometerclient import exc -from ceilometerclient.openstack.common.apiclient import auth -from ceilometerclient.openstack.common.apiclient import client -from ceilometerclient.openstack.common.apiclient import exceptions def _discover_auth_versions(session, auth_url): diff --git a/ceilometerclient/common/base.py b/ceilometerclient/common/base.py index 3bb30ac5..5df83448 100644 --- a/ceilometerclient/common/base.py +++ b/ceilometerclient/common/base.py @@ -19,9 +19,9 @@ Base utilities to build API operation managers and objects on top of. import copy +from ceilometerclient.apiclient import base +from ceilometerclient.apiclient import exceptions from ceilometerclient import exc -from ceilometerclient.openstack.common.apiclient import base -from ceilometerclient.openstack.common.apiclient import exceptions def getid(obj): diff --git a/ceilometerclient/i18n.py b/ceilometerclient/i18n.py new file mode 100644 index 00000000..c63b55a6 --- /dev/null +++ b/ceilometerclient/i18n.py @@ -0,0 +1,37 @@ +# Copyright 2014 IBM Corp. +# +# 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. + +"""oslo.i18n integration module. + +See http://docs.openstack.org/developer/oslo.i18n/usage.html . + +""" + +import oslo_i18n + + +_translators = oslo_i18n.TranslatorFactory(domain='ceilometerclient') + +# The primary translation function using the well-known name "_" +_ = _translators.primary + +# Translators for log levels. +# +# The abbreviated names are meant to reflect the usual use of a short +# name like '_'. The "L" is for "log" and the other letter comes from +# the level. +_LI = _translators.log_info +_LW = _translators.log_warning +_LE = _translators.log_error +_LC = _translators.log_critical diff --git a/ceilometerclient/openstack/common/__init__.py b/ceilometerclient/openstack/common/__init__.py deleted file mode 100644 index e69de29b..00000000 diff --git a/ceilometerclient/openstack/common/_i18n.py b/ceilometerclient/openstack/common/_i18n.py deleted file mode 100644 index 907ab4f7..00000000 --- a/ceilometerclient/openstack/common/_i18n.py +++ /dev/null @@ -1,45 +0,0 @@ -# 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. - -"""oslo.i18n integration module. - -See http://docs.openstack.org/developer/oslo.i18n/usage.html - -""" - -try: - import oslo_i18n - - # NOTE(dhellmann): This reference to o-s-l-o will be replaced by the - # application name when this module is synced into the separate - # repository. It is OK to have more than one translation function - # using the same domain, since there will still only be one message - # catalog. - _translators = oslo_i18n.TranslatorFactory(domain='ceilometerclient') - - # The primary translation function using the well-known name "_" - _ = _translators.primary - - # Translators for log levels. - # - # The abbreviated names are meant to reflect the usual use of a short - # name like '_'. The "L" is for "log" and the other letter comes from - # the level. - _LI = _translators.log_info - _LW = _translators.log_warning - _LE = _translators.log_error - _LC = _translators.log_critical -except ImportError: - # NOTE(dims): Support for cases where a project wants to use - # code from oslo-incubator, but is not ready to be internationalized - # (like tempest) - _ = _LI = _LW = _LE = _LC = lambda x: x diff --git a/ceilometerclient/openstack/common/apiclient/__init__.py b/ceilometerclient/openstack/common/apiclient/__init__.py deleted file mode 100644 index e69de29b..00000000 diff --git a/ceilometerclient/tests/unit/test_client.py b/ceilometerclient/tests/unit/test_client.py index bfbc355f..2beaf732 100644 --- a/ceilometerclient/tests/unit/test_client.py +++ b/ceilometerclient/tests/unit/test_client.py @@ -19,9 +19,9 @@ from keystoneauth1 import session as ks_session import mock import requests +from ceilometerclient.apiclient import exceptions from ceilometerclient import client from ceilometerclient import exc -from ceilometerclient.openstack.common.apiclient import exceptions from ceilometerclient.tests.unit import utils from ceilometerclient.v2 import client as v2client @@ -132,7 +132,7 @@ class ClientTest(utils.BaseTestCase): 'user_agent': None, 'debug': None, } - cls = 'ceilometerclient.openstack.common.apiclient.client.HTTPClient' + cls = 'ceilometerclient.apiclient.client.HTTPClient' with mock.patch(cls) as mocked: self.create_client(env) mocked.assert_called_with(**expected) @@ -194,7 +194,7 @@ class ClientTestWithAodh(ClientTest): def create_client(env, api_version=2, endpoint=None, exclude=[]): env = dict((k, v) for k, v in env.items() if k not in exclude) - with mock.patch('ceilometerclient.openstack.common.apiclient.client.' + with mock.patch('ceilometerclient.apiclient.client.' 'HTTPClient.client_request', return_value=mock.MagicMock()): return client.get_client(api_version, **env) @@ -219,7 +219,7 @@ class ClientTestWithAodh(ClientTest): def test_ceilometerclient_available_without_aodh_services_running(self): env = FAKE_ENV.copy() env.pop('auth_plugin', None) - with mock.patch('ceilometerclient.openstack.common.apiclient.client.' + with mock.patch('ceilometerclient.apiclient.client.' 'HTTPClient.client_request') as mocked_request: mocked_request.side_effect = requests.exceptions.ConnectionError ceiloclient = client.get_client(2, **env) @@ -250,7 +250,7 @@ class ClientAuthTest(utils.BaseTestCase): def create_client(env, api_version=2, endpoint=None, exclude=[]): env = dict((k, v) for k, v in env.items() if k not in exclude) - with mock.patch('ceilometerclient.openstack.common.apiclient.client.' + with mock.patch('ceilometerclient.apiclient.client.' 'HTTPClient.client_request', return_value=mock.MagicMock()): return client.get_client(api_version, **env) diff --git a/ceilometerclient/tests/unit/test_shell.py b/ceilometerclient/tests/unit/test_shell.py index ae110fb3..ab94fe09 100644 --- a/ceilometerclient/tests/unit/test_shell.py +++ b/ceilometerclient/tests/unit/test_shell.py @@ -19,9 +19,9 @@ import mock import six from testtools import matchers +from ceilometerclient.apiclient import client as api_client from ceilometerclient import client from ceilometerclient import exc -from ceilometerclient.openstack.common.apiclient import client as api_client from ceilometerclient import shell as ceilometer_shell from ceilometerclient.tests.unit import utils diff --git a/ceilometerclient/tests/unit/v2/test_alarms.py b/ceilometerclient/tests/unit/v2/test_alarms.py index 05573188..20fa1183 100644 --- a/ceilometerclient/tests/unit/v2/test_alarms.py +++ b/ceilometerclient/tests/unit/v2/test_alarms.py @@ -19,9 +19,9 @@ import six from six.moves import xrange # noqa import testtools +from ceilometerclient.apiclient import client +from ceilometerclient.apiclient import fake_client from ceilometerclient import exc -from ceilometerclient.openstack.common.apiclient import client -from ceilometerclient.openstack.common.apiclient import fake_client from ceilometerclient.v2 import alarms AN_ALARM = {u'alarm_actions': [u'http://site:8000/alarm'], diff --git a/ceilometerclient/tests/unit/v2/test_capabilities.py b/ceilometerclient/tests/unit/v2/test_capabilities.py index 2442e0af..884a34f4 100644 --- a/ceilometerclient/tests/unit/v2/test_capabilities.py +++ b/ceilometerclient/tests/unit/v2/test_capabilities.py @@ -14,8 +14,8 @@ import testtools -from ceilometerclient.openstack.common.apiclient import client -from ceilometerclient.openstack.common.apiclient import fake_client +from ceilometerclient.apiclient import client +from ceilometerclient.apiclient import fake_client from ceilometerclient.v2 import capabilities diff --git a/ceilometerclient/tests/unit/v2/test_event_types.py b/ceilometerclient/tests/unit/v2/test_event_types.py index 518e8531..e5d2037e 100644 --- a/ceilometerclient/tests/unit/v2/test_event_types.py +++ b/ceilometerclient/tests/unit/v2/test_event_types.py @@ -13,8 +13,8 @@ # under the License. -from ceilometerclient.openstack.common.apiclient import client -from ceilometerclient.openstack.common.apiclient import fake_client +from ceilometerclient.apiclient import client +from ceilometerclient.apiclient import fake_client from ceilometerclient.tests.unit import utils import ceilometerclient.v2.event_types diff --git a/ceilometerclient/tests/unit/v2/test_events.py b/ceilometerclient/tests/unit/v2/test_events.py index 4a9270f1..9cc94fd5 100644 --- a/ceilometerclient/tests/unit/v2/test_events.py +++ b/ceilometerclient/tests/unit/v2/test_events.py @@ -11,8 +11,8 @@ # WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the # License for the specific language governing permissions and limitations # under the License. -from ceilometerclient.openstack.common.apiclient import client -from ceilometerclient.openstack.common.apiclient import fake_client +from ceilometerclient.apiclient import client +from ceilometerclient.apiclient import fake_client from ceilometerclient.tests.unit import utils import ceilometerclient.v2.events diff --git a/ceilometerclient/tests/unit/v2/test_query_alarm_history.py b/ceilometerclient/tests/unit/v2/test_query_alarm_history.py index a04f159c..b37eb5dc 100644 --- a/ceilometerclient/tests/unit/v2/test_query_alarm_history.py +++ b/ceilometerclient/tests/unit/v2/test_query_alarm_history.py @@ -12,8 +12,8 @@ # License for the specific language governing permissions and limitations # under the License. -from ceilometerclient.openstack.common.apiclient import client -from ceilometerclient.openstack.common.apiclient import fake_client +from ceilometerclient.apiclient import client +from ceilometerclient.apiclient import fake_client from ceilometerclient.tests.unit import utils from ceilometerclient.v2 import query diff --git a/ceilometerclient/tests/unit/v2/test_query_alarms.py b/ceilometerclient/tests/unit/v2/test_query_alarms.py index e6339380..495bbd45 100644 --- a/ceilometerclient/tests/unit/v2/test_query_alarms.py +++ b/ceilometerclient/tests/unit/v2/test_query_alarms.py @@ -12,8 +12,8 @@ # License for the specific language governing permissions and limitations # under the License. -from ceilometerclient.openstack.common.apiclient import client -from ceilometerclient.openstack.common.apiclient import fake_client +from ceilometerclient.apiclient import client +from ceilometerclient.apiclient import fake_client from ceilometerclient.tests.unit import utils from ceilometerclient.v2 import query diff --git a/ceilometerclient/tests/unit/v2/test_query_samples.py b/ceilometerclient/tests/unit/v2/test_query_samples.py index 16828fef..217c35a0 100644 --- a/ceilometerclient/tests/unit/v2/test_query_samples.py +++ b/ceilometerclient/tests/unit/v2/test_query_samples.py @@ -12,8 +12,8 @@ # License for the specific language governing permissions and limitations # under the License. -from ceilometerclient.openstack.common.apiclient import client -from ceilometerclient.openstack.common.apiclient import fake_client +from ceilometerclient.apiclient import client +from ceilometerclient.apiclient import fake_client from ceilometerclient.tests.unit import utils from ceilometerclient.v2 import query diff --git a/ceilometerclient/tests/unit/v2/test_resources.py b/ceilometerclient/tests/unit/v2/test_resources.py index a03f88b5..ca88aa52 100644 --- a/ceilometerclient/tests/unit/v2/test_resources.py +++ b/ceilometerclient/tests/unit/v2/test_resources.py @@ -12,8 +12,8 @@ # WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the # License for the specific language governing permissions and limitations # under the License. -from ceilometerclient.openstack.common.apiclient import client -from ceilometerclient.openstack.common.apiclient import fake_client +from ceilometerclient.apiclient import client +from ceilometerclient.apiclient import fake_client from ceilometerclient.tests.unit import utils import ceilometerclient.v2.resources diff --git a/ceilometerclient/tests/unit/v2/test_samples.py b/ceilometerclient/tests/unit/v2/test_samples.py index 63a70fcf..864ac36a 100644 --- a/ceilometerclient/tests/unit/v2/test_samples.py +++ b/ceilometerclient/tests/unit/v2/test_samples.py @@ -15,8 +15,8 @@ import copy -from ceilometerclient.openstack.common.apiclient import client -from ceilometerclient.openstack.common.apiclient import fake_client +from ceilometerclient.apiclient import client +from ceilometerclient.apiclient import fake_client from ceilometerclient.tests.unit import utils import ceilometerclient.v2.samples diff --git a/ceilometerclient/tests/unit/v2/test_shell.py b/ceilometerclient/tests/unit/v2/test_shell.py index ce26af10..eca15e36 100644 --- a/ceilometerclient/tests/unit/v2/test_shell.py +++ b/ceilometerclient/tests/unit/v2/test_shell.py @@ -651,7 +651,7 @@ class ShellAlarmGnocchiCommandTest(test_shell.ShellTestBase): def _test_alarm_gnocchi_resources_arguments(self, action, argv): self.make_env(test_shell.FAKE_V2_ENV) with mock.patch.object(alarms.AlarmManager, action) as mocked: - with mock.patch('ceilometerclient.openstack.common.apiclient.' + with mock.patch('ceilometerclient.apiclient.' 'client.HTTPClient.client_request') as request: request.site_effect = exceptions.EndpointNotFound base_shell.main(argv) @@ -673,7 +673,7 @@ class ShellAlarmGnocchiCommandTest(test_shell.ShellTestBase): def _test_alarm_gnocchi_aggr_by_metrics_arguments(self, action, argv): self.make_env(test_shell.FAKE_V2_ENV) with mock.patch.object(alarms.AlarmManager, action) as mocked: - with mock.patch('ceilometerclient.openstack.common.apiclient.' + with mock.patch('ceilometerclient.apiclient.' 'client.HTTPClient.client_request') as request: request.site_effect = exceptions.EndpointNotFound base_shell.main(argv) @@ -695,7 +695,7 @@ class ShellAlarmGnocchiCommandTest(test_shell.ShellTestBase): def _test_alarm_gnocchi_aggr_by_resources_arguments(self, action, argv): self.make_env(test_shell.FAKE_V2_ENV) with mock.patch.object(alarms.AlarmManager, action) as mocked: - with mock.patch('ceilometerclient.openstack.common.apiclient.' + with mock.patch('ceilometerclient.apiclient.' 'client.HTTPClient.client_request') as request: request.site_effect = exceptions.EndpointNotFound base_shell.main(argv) @@ -1633,7 +1633,7 @@ class ShellShadowedArgsTest(test_shell.ShellTestBase): '--user-id', 'the-user-id-i-want-to-set', '--name', 'project-id-test'] + args with mock.patch.object(alarms.AlarmManager, method) as mocked: - with mock.patch('ceilometerclient.openstack.common.apiclient.' + with mock.patch('ceilometerclient.apiclient.' 'client.HTTPClient.client_request') as request: request.site_effect = exceptions.EndpointNotFound base_shell.main(cli_args) @@ -1724,7 +1724,7 @@ class ShellShadowedArgsTest(test_shell.ShellTestBase): '--meter-unit', 'ns', '--sample-volume', '10086', ] - with mock.patch('ceilometerclient.openstack.common.apiclient.client.' + with mock.patch('ceilometerclient.apiclient.client.' 'HTTPClient.client_request') as client_request: client_request.site_effect = exceptions.EndpointNotFound base_shell.main(cli_args) diff --git a/ceilometerclient/tests/unit/v2/test_statistics.py b/ceilometerclient/tests/unit/v2/test_statistics.py index e41b38c7..b7924cc3 100644 --- a/ceilometerclient/tests/unit/v2/test_statistics.py +++ b/ceilometerclient/tests/unit/v2/test_statistics.py @@ -12,8 +12,8 @@ # WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the # License for the specific language governing permissions and limitations # under the License. -from ceilometerclient.openstack.common.apiclient import client -from ceilometerclient.openstack.common.apiclient import fake_client +from ceilometerclient.apiclient import client +from ceilometerclient.apiclient import fake_client from ceilometerclient.tests.unit import utils import ceilometerclient.v2.statistics diff --git a/ceilometerclient/tests/unit/v2/test_trait_descriptions.py b/ceilometerclient/tests/unit/v2/test_trait_descriptions.py index b249d3d2..cd3e4fef 100644 --- a/ceilometerclient/tests/unit/v2/test_trait_descriptions.py +++ b/ceilometerclient/tests/unit/v2/test_trait_descriptions.py @@ -11,8 +11,8 @@ # WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the # License for the specific language governing permissions and limitations # under the License. -from ceilometerclient.openstack.common.apiclient import client -from ceilometerclient.openstack.common.apiclient import fake_client +from ceilometerclient.apiclient import client +from ceilometerclient.apiclient import fake_client from ceilometerclient.tests.unit import utils import ceilometerclient.v2.trait_descriptions diff --git a/ceilometerclient/tests/unit/v2/test_traits.py b/ceilometerclient/tests/unit/v2/test_traits.py index e2775243..351760b2 100644 --- a/ceilometerclient/tests/unit/v2/test_traits.py +++ b/ceilometerclient/tests/unit/v2/test_traits.py @@ -11,8 +11,8 @@ # WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the # License for the specific language governing permissions and limitations # under the License. -from ceilometerclient.openstack.common.apiclient import client -from ceilometerclient.openstack.common.apiclient import fake_client +from ceilometerclient.apiclient import client +from ceilometerclient.apiclient import fake_client from ceilometerclient.tests.unit import utils import ceilometerclient.v2.traits diff --git a/tox.ini b/tox.ini index 023352dc..5269e068 100644 --- a/tox.ini +++ b/tox.ini @@ -36,3 +36,7 @@ commands = sphinx-build -a -E -W -d releasenotes/build/doctrees -b html releasen [flake8] show-source = True exclude = .venv,.git,.tox,dist,doc,*openstack/common*,*lib/python*,*egg,build,tools + +[hacking] +import_exceptions = + ceilometerclient.i18n