diff options
author | Chad Smith <chad.smith@canonical.com> | 2017-07-13 10:45:32 -0600 |
---|---|---|
committer | Chad Smith <chad.smith@canonical.com> | 2017-07-13 10:45:32 -0600 |
commit | 812c36823e085416afab7a35233cb8ff704d2e22 (patch) | |
tree | 802f47f4d5738055ef3f1eaaad42fce10aa0a8d5 /tests/unittests/test_datasource/test_gce.py | |
parent | 067721672570cc83d54d2c2d5677eeb79bef85e2 (diff) | |
download | vyos-cloud-init-812c36823e085416afab7a35233cb8ff704d2e22.tar.gz vyos-cloud-init-812c36823e085416afab7a35233cb8ff704d2e22.zip |
test_gce: Fix invalid mock of platform_reports_gce to return False
The mock of platform_reports_gce is created with a True return value in
tests/unittests/test_datasource/test_gce.py:TestDataSourceGCE.setUp().
But, the final test_get_data_returns_false_if_not_on_gce incorrectly
attempts to override the mocked return_value of True to False by setting
self.m_platform_gce.return_value = False. But, since the mock is already
initialized, the updated False is not honored. Instead we should use the
patch decorator on the specific unit test to override the return_value of
DataSourceGCE.platform_reports_gce to False.
A False from platform_reports_gce allows DataSourceGCE.get_data to
immediately return False instead of trying to contact
metadata.google.internal as the related bug references.
Diffstat (limited to 'tests/unittests/test_datasource/test_gce.py')
-rw-r--r-- | tests/unittests/test_datasource/test_gce.py | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/tests/unittests/test_datasource/test_gce.py b/tests/unittests/test_datasource/test_gce.py index 6fd1341d..3e8398b3 100644 --- a/tests/unittests/test_datasource/test_gce.py +++ b/tests/unittests/test_datasource/test_gce.py @@ -163,8 +163,9 @@ class TestDataSourceGCE(test_helpers.HttprettyTestCase): self.assertEqual(True, r) self.assertEqual('bar', self.ds.availability_zone) - def test_get_data_returns_false_if_not_on_gce(self): - self.m_platform_reports_gce.return_value = False + @mock.patch('cloudinit.sources.DataSourceGCE.platform_reports_gce') + def test_get_data_returns_false_if_not_on_gce(self, m_platform_gce): + m_platform_gce.return_value = False self.assertEqual(False, self.ds.get_data()) |