summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorScott Moser <smoser@ubuntu.com>2017-06-29 18:01:21 -0400
committergit-ubuntu importer <ubuntu-devel-discuss@lists.ubuntu.com>2017-06-29 22:07:10 +0000
commit3d506f330ab018a2c08b48c3aa31b90b584f3eae (patch)
treee64c203597ee6bc6447da5545f72e63365005000 /tests
parent66b6ecc41b8bb87e11cbc07ce93cee10ba3365d3 (diff)
downloadcloud-init-git-3d506f330ab018a2c08b48c3aa31b90b584f3eae.tar.gz
0.7.9-199-g4d9f24f5-0ubuntu1 (patches unapplied)
Imported using git-ubuntu import.
Diffstat (limited to 'tests')
-rw-r--r--tests/unittests/test_util.py23
1 files changed, 23 insertions, 0 deletions
diff --git a/tests/unittests/test_util.py b/tests/unittests/test_util.py
index a73fd26a..65035be2 100644
--- a/tests/unittests/test_util.py
+++ b/tests/unittests/test_util.py
@@ -365,6 +365,9 @@ class TestReadDMIData(helpers.FilesystemMockingTestCase):
self.addCleanup(shutil.rmtree, self.new_root)
self.patchOS(self.new_root)
self.patchUtils(self.new_root)
+ p = mock.patch("cloudinit.util.is_container", return_value=False)
+ self.addCleanup(p.stop)
+ self._m_is_container = p.start()
def _create_sysfs_parent_directory(self):
util.ensure_dir(os.path.join('sys', 'class', 'dmi', 'id'))
@@ -453,6 +456,26 @@ class TestReadDMIData(helpers.FilesystemMockingTestCase):
self._create_sysfs_file(sysfs_key, dmi_value)
self.assertEqual(expected, util.read_dmi_data(dmi_key))
+ def test_container_returns_none(self):
+ """In a container read_dmi_data should always return None."""
+
+ # first verify we get the value if not in container
+ self._m_is_container.return_value = False
+ key, val = ("system-product-name", "my_product")
+ self._create_sysfs_file('product_name', val)
+ self.assertEqual(val, util.read_dmi_data(key))
+
+ # then verify in container returns None
+ self._m_is_container.return_value = True
+ self.assertIsNone(util.read_dmi_data(key))
+
+ def test_container_returns_none_on_unknown(self):
+ """In a container even bogus keys return None."""
+ self._m_is_container.return_value = True
+ self._create_sysfs_file('product_name', "should-be-ignored")
+ self.assertIsNone(util.read_dmi_data("bogus"))
+ self.assertIsNone(util.read_dmi_data("system-product-name"))
+
class TestMultiLog(helpers.FilesystemMockingTestCase):