summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorChad Smith <chad.smith@canonical.com>2018-04-03 16:54:45 -0600
committergit-ubuntu importer <ubuntu-devel-discuss@lists.ubuntu.com>2018-04-05 15:54:06 +0000
commit70395c494c056383f95e54fcf9d50d0b2e7d798d (patch)
treee38cc6ce5cc8c0b4230ff215fc976e07f93b5dc3 /tests
parentb2109b54059d1011d8bcd7225d5716a681f87f2f (diff)
downloadcloud-init-git-70395c494c056383f95e54fcf9d50d0b2e7d798d.tar.gz
18.2-4-g05926e48-0ubuntu1 (patches unapplied)
Imported using git-ubuntu import.
Diffstat (limited to 'tests')
-rw-r--r--tests/cloud_tests/platforms/lxd/instance.py2
-rw-r--r--tests/cloud_tests/testcases/examples/including_user_groups.yaml2
-rw-r--r--tests/cloud_tests/testcases/modules/user_groups.yaml2
-rw-r--r--tests/data/merge_sources/expected7.yaml16
-rw-r--r--tests/data/merge_sources/source7-1.yaml10
-rw-r--r--tests/data/merge_sources/source7-2.yaml6
-rw-r--r--tests/unittests/test_util.py29
7 files changed, 46 insertions, 21 deletions
diff --git a/tests/cloud_tests/platforms/lxd/instance.py b/tests/cloud_tests/platforms/lxd/instance.py
index 0488da57..0d957bca 100644
--- a/tests/cloud_tests/platforms/lxd/instance.py
+++ b/tests/cloud_tests/platforms/lxd/instance.py
@@ -210,7 +210,7 @@ def _has_proper_console_support():
reason = "LXD server does not support console api extension"
else:
dver = info.get('environment', {}).get('driver_version', "")
- if dver.startswith("2.") or dver.startwith("1."):
+ if dver.startswith("2.") or dver.startswith("1."):
reason = "LXD Driver version not 3.x+ (%s)" % dver
else:
try:
diff --git a/tests/cloud_tests/testcases/examples/including_user_groups.yaml b/tests/cloud_tests/testcases/examples/including_user_groups.yaml
index 469d03c3..77528d98 100644
--- a/tests/cloud_tests/testcases/examples/including_user_groups.yaml
+++ b/tests/cloud_tests/testcases/examples/including_user_groups.yaml
@@ -16,7 +16,7 @@ cloud_config: |
- default
- name: foobar
gecos: Foo B. Bar
- primary-group: foobar
+ primary_group: foobar
groups: users
expiredate: 2038-01-19
lock_passwd: false
diff --git a/tests/cloud_tests/testcases/modules/user_groups.yaml b/tests/cloud_tests/testcases/modules/user_groups.yaml
index 22b5d706..675dfb8c 100644
--- a/tests/cloud_tests/testcases/modules/user_groups.yaml
+++ b/tests/cloud_tests/testcases/modules/user_groups.yaml
@@ -15,7 +15,7 @@ cloud_config: |
- default
- name: foobar
gecos: Foo B. Bar
- primary-group: foobar
+ primary_group: foobar
groups: users
expiredate: 2038-01-19
lock_passwd: false
diff --git a/tests/data/merge_sources/expected7.yaml b/tests/data/merge_sources/expected7.yaml
index 25284f04..d32988e8 100644
--- a/tests/data/merge_sources/expected7.yaml
+++ b/tests/data/merge_sources/expected7.yaml
@@ -4,20 +4,20 @@ users:
- default
- name: foobar
gecos: Foo B. Bar
- primary-group: foobar
+ primary_group: foobar
groups: users
- selinux-user: staff_u
+ selinux_user: staff_u
expiredate: 2012-09-01
- ssh-import-id: foobar
+ ssh_import_id: foobar
lock-passwd: false
passwd: $6$j212wezy$7H/1LT4f9/N3wpgNunhsIqtMj62OKiS3nyNwuizouQc3u7MbYCarYeAHWYPYb2FT.lbioDm2RrkJPb9BZMN1O/
- name: barfoo
gecos: Bar B. Foo
sudo: ALL=(ALL) NOPASSWD:ALL
groups: users, admin
- ssh-import-id: None
+ ssh_import_id: None
lock-passwd: true
- ssh-authorized-keys:
+ ssh_authorized_keys:
- <ssh pub key 1>
- <ssh pub key 2>
- name: cloudy
@@ -29,10 +29,10 @@ users:
- sue
- name: foobar_jr
gecos: Foo B. Bar Jr
- primary-group: foobar
+ primary_group: foobar
groups: users
- selinux-user: staff_u
+ selinux_user: staff_u
expiredate: 2012-09-01
- ssh-import-id: foobar
+ ssh_import_id: foobar
lock-passwd: false
passwd: $6$j212wezy$7H/1LT4f9/N3wpgNunhsIqtMj62OKiS3nyNwuizouQc3u7MbYCarYeAHWYPYb2FT.lbioDm2RrkJPb9BZMN1O/
diff --git a/tests/data/merge_sources/source7-1.yaml b/tests/data/merge_sources/source7-1.yaml
index 8fb9b32a..6405fc9b 100644
--- a/tests/data/merge_sources/source7-1.yaml
+++ b/tests/data/merge_sources/source7-1.yaml
@@ -4,20 +4,20 @@ users:
- default
- name: foobar
gecos: Foo B. Bar
- primary-group: foobar
+ primary_group: foobar
groups: users
- selinux-user: staff_u
+ selinux_user: staff_u
expiredate: 2012-09-01
- ssh-import-id: foobar
+ ssh_import_id: foobar
lock-passwd: false
passwd: $6$j212wezy$7H/1LT4f9/N3wpgNunhsIqtMj62OKiS3nyNwuizouQc3u7MbYCarYeAHWYPYb2FT.lbioDm2RrkJPb9BZMN1O/
- name: barfoo
gecos: Bar B. Foo
sudo: ALL=(ALL) NOPASSWD:ALL
groups: users, admin
- ssh-import-id: None
+ ssh_import_id: None
lock-passwd: true
- ssh-authorized-keys:
+ ssh_authorized_keys:
- <ssh pub key 1>
- <ssh pub key 2>
- name: cloudy
diff --git a/tests/data/merge_sources/source7-2.yaml b/tests/data/merge_sources/source7-2.yaml
index 1e26201b..0cd28978 100644
--- a/tests/data/merge_sources/source7-2.yaml
+++ b/tests/data/merge_sources/source7-2.yaml
@@ -6,11 +6,11 @@ users:
- sue
- name: foobar_jr
gecos: Foo B. Bar Jr
- primary-group: foobar
+ primary_group: foobar
groups: users
- selinux-user: staff_u
+ selinux_user: staff_u
expiredate: 2012-09-01
- ssh-import-id: foobar
+ ssh_import_id: foobar
lock-passwd: false
passwd: $6$j212wezy$7H/1LT4f9/N3wpgNunhsIqtMj62OKiS3nyNwuizouQc3u7MbYCarYeAHWYPYb2FT.lbioDm2RrkJPb9BZMN1O/
diff --git a/tests/unittests/test_util.py b/tests/unittests/test_util.py
index 8685b8e2..50101906 100644
--- a/tests/unittests/test_util.py
+++ b/tests/unittests/test_util.py
@@ -366,8 +366,11 @@ class TestMountinfoParsing(helpers.ResourceUsingTestCase):
expected = ('none', 'tmpfs', '/run/lock')
self.assertEqual(expected, util.parse_mount_info('/run/lock', lines))
+ @mock.patch('cloudinit.util.os')
@mock.patch('cloudinit.util.subp')
- def test_get_device_info_from_zpool(self, zpool_output):
+ def test_get_device_info_from_zpool(self, zpool_output, m_os):
+ # mock /dev/zfs exists
+ m_os.path.exists.return_value = True
# mock subp command from util.get_mount_info_fs_on_zpool
zpool_output.return_value = (
self.readResource('zpool_status_simple.txt'), ''
@@ -376,9 +379,31 @@ class TestMountinfoParsing(helpers.ResourceUsingTestCase):
ret = util.get_device_info_from_zpool('vmzroot')
self.assertEqual('gpt/system', ret)
self.assertIsNotNone(ret)
+ m_os.path.exists.assert_called_with('/dev/zfs')
+ @mock.patch('cloudinit.util.os')
+ def test_get_device_info_from_zpool_no_dev_zfs(self, m_os):
+ # mock /dev/zfs missing
+ m_os.path.exists.return_value = False
+ # save function return values and do asserts
+ ret = util.get_device_info_from_zpool('vmzroot')
+ self.assertIsNone(ret)
+
+ @mock.patch('cloudinit.util.os')
+ @mock.patch('cloudinit.util.subp')
+ def test_get_device_info_from_zpool_handles_no_zpool(self, m_sub, m_os):
+ """Handle case where there is no zpool command"""
+ # mock /dev/zfs exists
+ m_os.path.exists.return_value = True
+ m_sub.side_effect = util.ProcessExecutionError("No zpool cmd")
+ ret = util.get_device_info_from_zpool('vmzroot')
+ self.assertIsNone(ret)
+
+ @mock.patch('cloudinit.util.os')
@mock.patch('cloudinit.util.subp')
- def test_get_device_info_from_zpool_on_error(self, zpool_output):
+ def test_get_device_info_from_zpool_on_error(self, zpool_output, m_os):
+ # mock /dev/zfs exists
+ m_os.path.exists.return_value = True
# mock subp command from util.get_mount_info_fs_on_zpool
zpool_output.return_value = (
self.readResource('zpool_status_simple.txt'), 'error'