summaryrefslogtreecommitdiff
path: root/tests/unittests/config/test_cc_spacewalk.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/unittests/config/test_cc_spacewalk.py')
-rw-r--r--tests/unittests/config/test_cc_spacewalk.py42
1 files changed, 42 insertions, 0 deletions
diff --git a/tests/unittests/config/test_cc_spacewalk.py b/tests/unittests/config/test_cc_spacewalk.py
new file mode 100644
index 00000000..96efccf0
--- /dev/null
+++ b/tests/unittests/config/test_cc_spacewalk.py
@@ -0,0 +1,42 @@
+# This file is part of cloud-init. See LICENSE file for license information.
+
+from cloudinit.config import cc_spacewalk
+from cloudinit import subp
+
+from tests.unittests import helpers
+
+import logging
+from unittest import mock
+
+LOG = logging.getLogger(__name__)
+
+
+class TestSpacewalk(helpers.TestCase):
+ space_cfg = {
+ 'spacewalk': {
+ 'server': 'localhost',
+ 'profile_name': 'test',
+ }
+ }
+
+ @mock.patch("cloudinit.config.cc_spacewalk.subp.subp")
+ def test_not_is_registered(self, mock_subp):
+ mock_subp.side_effect = subp.ProcessExecutionError(exit_code=1)
+ self.assertFalse(cc_spacewalk.is_registered())
+
+ @mock.patch("cloudinit.config.cc_spacewalk.subp.subp")
+ def test_is_registered(self, mock_subp):
+ mock_subp.side_effect = None
+ self.assertTrue(cc_spacewalk.is_registered())
+
+ @mock.patch("cloudinit.config.cc_spacewalk.subp.subp")
+ def test_do_register(self, mock_subp):
+ cc_spacewalk.do_register(**self.space_cfg['spacewalk'])
+ mock_subp.assert_called_with([
+ 'rhnreg_ks',
+ '--serverUrl', 'https://localhost/XMLRPC',
+ '--profilename', 'test',
+ '--sslCACert', cc_spacewalk.def_ca_cert_path,
+ ], capture=False)
+
+# vi: ts=4 expandtab