]> git-server-git.apps.pok.os.sepia.ceph.com Git - teuthology.git/commitdiff
Add tests for spawn_sol_log()
authorZack Cerza <zack@redhat.com>
Tue, 30 Aug 2016 23:18:29 +0000 (17:18 -0600)
committerZack Cerza <zack@redhat.com>
Wed, 31 Aug 2016 21:18:57 +0000 (15:18 -0600)
Signed-off-by: Zack Cerza <zack@redhat.com>
teuthology/orchestra/test/test_console.py

index c7c12a5062bcf84977ae510a2620e4d9b5e55aa1..78d23b09818be992136df954a01af996ac17a9c6 100644 (file)
@@ -70,6 +70,41 @@ class TestPhysicalConsole(TestConsole):
             c='power cycle',
         )
 
+    def test_spawn_log_conserver(self):
+        with patch(
+            'teuthology.orchestra.console.subprocess.Popen',
+            autospec=True,
+        ) as m_popen:
+            m_popen.return_value.wait.return_value = 0
+            cons = self.klass(self.hostname)
+            assert cons.has_conserver is True
+            m_popen.reset_mock()
+            m_popen.return_value.poll.return_value = None
+            m_popen.poll.return_value = None
+            cons.spawn_sol_log('/fake/path')
+            assert m_popen.call_count == 1
+            call_args = m_popen.call_args_list[0][0][0]
+            assert any(
+                [teuth_config.conserver_master in arg for arg in call_args]
+            )
+
+    def test_spawn_log_ipmi(self):
+        with patch(
+            'teuthology.orchestra.console.subprocess.Popen',
+            autospec=True,
+        ) as m_popen:
+            m_popen.return_value.wait.return_value = 1
+            cons = self.klass(self.hostname)
+            assert cons.has_conserver is False
+            m_popen.reset_mock()
+            m_popen.return_value.poll.return_value = 1
+            cons.spawn_sol_log('/fake/path')
+            assert m_popen.call_count == 1
+            call_args = m_popen.call_args_list[0][0][0]
+            assert any(
+                ['ipmitool' in arg for arg in call_args]
+            )
+
     def test_get_console_conserver(self):
         with patch(
             'teuthology.orchestra.console.subprocess.Popen',