示例#1
0
    def test_do_spawn_and_publish_error(self, mc_run_ans, mc_grc):
        mc_grc.side_effect = ConnectionError()

        terminate_vm(self.opts, self.terminate_pb_path, 0, self.vm_name, self.vm_ip)

        assert mc_run_ans.called
        expected_cmd = '-c ssh {} --extra-vars=\'{{"copr_task": {{"vm_name": "{}", "ip": "{}"}}}}\''.format(
            self.terminate_pb_path, self.vm_name, self.vm_ip)

        assert expected_cmd == mc_run_ans.call_args[:-1][0][0]
        assert mc_grc.called
示例#2
0
    def test_do_spawn_and_publish_error(self, mc_run_ans, mc_grc):
        mc_grc.side_effect = ConnectionError()

        terminate_vm(self.opts, self.terminate_pb_path, 0, self.vm_name, self.vm_ip)

        assert mc_run_ans.called
        expected_cmd = '-c ssh {} --extra-vars=\'{{"copr_task": {{"vm_name": "{}", "ip": "{}"}}}}\''.format(
            self.terminate_pb_path, self.vm_name, self.vm_ip)

        assert expected_cmd == mc_run_ans.call_args[:-1][0][0]
        assert mc_grc.called
示例#3
0
    def test_do_spawn_and_publish_ok(self, mc_run_ans, mc_grc):
        mc_rc = mock.MagicMock()
        mc_grc.return_value = mc_rc

        terminate_vm(self.opts, self.terminate_pb_path, 0, self.vm_name, self.vm_ip)

        assert mc_run_ans.called
        expected_cmd = '-c ssh {} --extra-vars=\'{{"copr_task": {{"vm_name": "{}", "ip": "{}"}}}}\''.format(
            self.terminate_pb_path, self.vm_name, self.vm_ip)

        assert expected_cmd == mc_run_ans.call_args[:-1][0][0]

        assert mc_grc.called
        assert mc_rc.publish.called

        expected_call = mock.call(
            'copr:backend:vm:pubsub::',
            '{"vm_ip": "127.0.0.1", "vm_name": "localhost", '
            '"topic": "vm_terminated", "group": 0, "result": "OK"}')
        assert mc_rc.publish.call_args == expected_call
示例#4
0
    def test_do_spawn_and_publish_ok(self, mc_run_ans, mc_grc):
        mc_rc = mock.MagicMock()
        mc_grc.return_value = mc_rc

        terminate_vm(self.opts, self.terminate_pb_path, 0, self.vm_name, self.vm_ip)

        assert mc_run_ans.called
        expected_cmd = '-c ssh {} --extra-vars=\'{{"copr_task": {{"vm_name": "{}", "ip": "{}"}}}}\''.format(
            self.terminate_pb_path, self.vm_name, self.vm_ip)

        assert expected_cmd == mc_run_ans.call_args[:-1][0][0]

        assert mc_grc.called
        assert mc_rc.publish.called

        expected_call = mock.call(
            'copr:backend:vm:pubsub::',
            '{"vm_ip": "127.0.0.1", "vm_name": "localhost", '
            '"topic": "vm_terminated", "group": 0, "result": "OK"}')
        assert mc_rc.publish.call_args == expected_call
示例#5
0
    def test_terminate_vm_on_error(self, mc_run_ans):
        mc_run_ans.side_effect = CalledProcessError(0, cmd=["ls"])

        # doesn't raise an error
        terminate_vm(self.opts, self.terminate_pb_path, 0, self.vm_name, self.vm_ip)
示例#6
0
    def test_terminate_vm_on_error(self, mc_run_ans):
        mc_run_ans.side_effect = CalledProcessError(0, cmd=["ls"])

        # doesn't raise an error
        terminate_vm(self.opts, self.terminate_pb_path, 0, self.vm_name, self.vm_ip)