From 8bb5ade02fd768ab6e55641d3ab034c3cd574d90 Mon Sep 17 00:00:00 2001 From: Alex Kavanagh Date: Thu, 25 May 2017 10:56:42 +0100 Subject: [PATCH] Use charms.openstack charmhelpers test_mocks Every reactive charm that uses charms.openstack and implements unit testing needs to mock charmhelpers, as otherwise the tests blow up. This patch uses the mocking of charmhelpers in charms.openstack so that a charm layer can just import test_mocks and charmhelpers will be mocked out along with setting up a default charmhelpers.c.o.u.OPENSTACK_RELEASES so that when an OpenStackCharm() derived charm class won't fail on definition. Change-Id: I3dd4954daa24ff16a9da8f2a64290e5013b55301 Related-Bug: #1693017 Depends-On: I5ac40617ee30e5f421ec16fc7592177a5e6aa166 --- unit_tests/__init__.py | 28 ++-------------------------- 1 file changed, 2 insertions(+), 26 deletions(-) diff --git a/unit_tests/__init__.py b/unit_tests/__init__.py index 12469eb..3a5e9a3 100644 --- a/unit_tests/__init__.py +++ b/unit_tests/__init__.py @@ -13,34 +13,10 @@ # limitations under the License. import sys -import mock sys.path.append('src') sys.path.append('src/lib') # Mock out charmhelpers so that we can test without it. -# also stops sideeffects from occuring. -charmhelpers = mock.MagicMock() -apt_pkg = mock.MagicMock() -sys.modules['apt_pkg'] = apt_pkg -sys.modules['charmhelpers'] = charmhelpers -sys.modules['charmhelpers.core'] = charmhelpers.core -sys.modules['charmhelpers.core.decorators'] = charmhelpers.core.decorators -sys.modules['charmhelpers.core.hookenv'] = charmhelpers.core.hookenv -sys.modules['charmhelpers.core.host'] = charmhelpers.core.host -sys.modules['charmhelpers.core.unitdata'] = charmhelpers.core.unitdata -sys.modules['charmhelpers.core.templating'] = charmhelpers.core.templating -sys.modules['charmhelpers.contrib'] = charmhelpers.contrib -sys.modules['charmhelpers.contrib.openstack'] = charmhelpers.contrib.openstack -sys.modules['charmhelpers.contrib.openstack.utils'] = ( - charmhelpers.contrib.openstack.utils) -sys.modules['charmhelpers.contrib.openstack.templating'] = ( - charmhelpers.contrib.openstack.templating) -sys.modules['charmhelpers.contrib.network'] = charmhelpers.contrib.network -sys.modules['charmhelpers.contrib.network.ip'] = ( - charmhelpers.contrib.network.ip) -sys.modules['charmhelpers.fetch'] = charmhelpers.fetch -sys.modules['charmhelpers.cli'] = charmhelpers.cli -sys.modules['charmhelpers.contrib.hahelpers'] = charmhelpers.contrib.hahelpers -sys.modules['charmhelpers.contrib.hahelpers.cluster'] = ( - charmhelpers.contrib.hahelpers.cluster) +import charms_openstack.test_mocks # noqa +charms_openstack.test_mocks.mock_charmhelpers()