]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph-deploy.git/commitdiff
[BZ-1282484] tests for the new is_upstart utility
authorAlfredo Deza <adeza@redhat.com>
Tue, 2 Feb 2016 12:59:37 +0000 (07:59 -0500)
committerAlfredo Deza <adeza@redhat.com>
Tue, 2 Feb 2016 13:02:00 +0000 (08:02 -0500)
Signed-off-by: Alfredo Deza <adeza@redhat.com>
ceph_deploy/tests/unit/util/test_system.py

index d4fc11db8532de5385b89e47282179d416e8c937..6e21fca5c1e9f0e4e0086e2005421c3afaf7920a 100644 (file)
@@ -17,3 +17,41 @@ class TestExecutablePath(object):
         fake_conn.remote_module.which = Mock(return_value=None)
         with raises(exc.ExecutableNotFound):
             system.executable_path(fake_conn, 'foo')
+
+
+class TestIsUpstart(object):
+
+    def test_it_is_actually_systemd(self):
+        fake_conn = Mock()
+        fake_conn.remote_module.grep = Mock(return_value=True)
+        result = system.is_upstart(fake_conn)
+        assert result is False
+
+    def test_no_initctl(self):
+        fake_conn = Mock()
+        fake_conn.remote_module.grep = Mock(return_value=False)
+        fake_conn.remote_module.which = Mock(return_value=None)
+        result = system.is_upstart(fake_conn)
+        assert result is False
+
+    def test_initctl_version_says_upstart(self, monkeypatch):
+        fake_conn = Mock()
+        fake_conn.remote_module.grep = Mock(return_value=False)
+        fake_conn.remote_module.which = Mock(return_value='/bin/initctl')
+        fake_stdout = (['init', '(upstart 1.12.1)'], [], 0)
+        fake_check = Mock(return_value=fake_stdout)
+        monkeypatch.setattr("ceph_deploy.util.system.remoto.process.check", lambda *a: fake_check())
+
+        result = system.is_upstart(fake_conn)
+        assert result is True
+
+    def test_initctl_version_says_something_else(self, monkeypatch):
+        fake_conn = Mock()
+        fake_conn.remote_module.grep = Mock(return_value=False)
+        fake_conn.remote_module.which = Mock(return_value='/bin/initctl')
+        fake_stdout = (['nosh', 'version', '1.14'], [], 0)
+        fake_check = Mock(return_value=fake_stdout)
+        monkeypatch.setattr("ceph_deploy.util.system.remoto.process.check", lambda *a: fake_check())
+
+        result = system.is_upstart(fake_conn)
+        assert result is False