summaryrefslogtreecommitdiff
path: root/tests/unittests
diff options
context:
space:
mode:
authorDaniel Watkins <daniel.watkins@canonical.com>2019-02-26 15:37:36 +0000
committerServer Team CI Bot <josh.powers+server-team-bot@canonical.com>2019-02-26 15:37:36 +0000
commit1182ad5f9362e1570c622345a3ac996c07eb2eeb (patch)
tree273ec82d32d08b67ca2b488c0c991093c29dbdd0 /tests/unittests
parentf278a8a3dbb1e45e8d83491ad24e41812cb77ddb (diff)
downloadvyos-cloud-init-1182ad5f9362e1570c622345a3ac996c07eb2eeb.tar.gz
vyos-cloud-init-1182ad5f9362e1570c622345a3ac996c07eb2eeb.zip
tests: fix some slow tests and some leaking state
In test_ds_identify, don't mutate otherwise-static test data. When running tests in a random order, this was causing failures due to breaking preconditions for other tests. In tests/helpers, reset logging level in tearDown. Some of the CLI tests set the level of the root logger in a way that isn't correctly reset. For test_poll_imds_re_dhcp_on_timeout and test_dhcp_discovery_run_in_sandbox_warns_invalid_pid, mock out time.sleep; this saves ~11 seconds (or ~40% of previous test time!).
Diffstat (limited to 'tests/unittests')
-rw-r--r--tests/unittests/test_datasource/test_azure.py1
-rw-r--r--tests/unittests/test_ds_identify.py2
2 files changed, 2 insertions, 1 deletions
diff --git a/tests/unittests/test_datasource/test_azure.py b/tests/unittests/test_datasource/test_azure.py
index 417d86a9..5edf36e8 100644
--- a/tests/unittests/test_datasource/test_azure.py
+++ b/tests/unittests/test_datasource/test_azure.py
@@ -1692,6 +1692,7 @@ class TestPreprovisioningPollIMDS(CiTestCase):
self.paths = helpers.Paths({'cloud_dir': self.tmp})
dsaz.BUILTIN_DS_CONFIG['data_dir'] = self.waagent_d
+ @mock.patch('time.sleep', mock.MagicMock())
@mock.patch(MOCKPATH + 'EphemeralDHCPv4')
def test_poll_imds_re_dhcp_on_timeout(self, m_dhcpv4, report_ready_func,
fake_resp, m_media_switch, m_dhcp,
diff --git a/tests/unittests/test_ds_identify.py b/tests/unittests/test_ds_identify.py
index 756b4fb4..d00c1b4b 100644
--- a/tests/unittests/test_ds_identify.py
+++ b/tests/unittests/test_ds_identify.py
@@ -441,7 +441,7 @@ class TestDsIdentify(DsIdentifyBase):
nova does not identify itself on platforms other than intel.
https://bugs.launchpad.net/cloud-init/+bugs?field.tag=dsid-nova"""
- data = VALID_CFG['OpenStack'].copy()
+ data = copy.deepcopy(VALID_CFG['OpenStack'])
del data['files'][P_PRODUCT_NAME]
data.update({'policy_dmi': POLICY_FOUND_OR_MAYBE,
'policy_no_dmi': POLICY_FOUND_OR_MAYBE})