Exemplo n.º 1
0
def test_status():
    service_status = ServiceStatus("service_status")
    ret = service_status.status()
    assert ret is False
    with patch.object(cmd_utils.Command, 'run') as mock_run:
        mock_run.return_value = run(True)
        ret = service_status.status()
        assert ret is False
    with patch.object(cmd_utils.Command, 'run') as mock_run:
        mock_run.return_value = run(False)
        ret = service_status.status()
        assert ret is True
    def test_service_statuss_true(self, monkeypatch):
        def mock_command_constructor(obj, command):
            assert command == "systemctl status " + \
                "tendrl-node-agent.service"
            return

        monkeypatch.setattr(cmd_utils.Command, '__init__',
                            mock_command_constructor)

        def mock_command_run(obj, exec_path):
            stdout = "tendrl-node-agent.service - A python agent local to" + \
                     " every managed storage node in the sds cluster " + \
                     "   Loaded: loaded (/usr/lib/systemd/system/tendrl" + \
                     "-node-agent.service;disabled;vendor preset:disabled)" + \
                     " Active:active(running)since Thu 2017-01-12 19:14:32" + \
                     " IST; 15h ago  Main PID: 5216 (tendrl-node-age) " + \
                     "   CGroup: /system.slice/tendrl-node-agent.service"
            stderr = ""
            rc = 0
            return stdout, stderr, rc

        monkeypatch.setattr(cmd_utils.Command, 'run', mock_command_run)

        service = ServiceStatus("tendrl-node-agent", '/tmp/')
        status = service.status()
        assert status
    def test_service_status_false(self, monkeypatch):
        def mock_command_constructor(obj, command):
            assert command == "systemctl status " + \
                "tendrl-node-agent.service"
            return

        monkeypatch.setattr(cmd_utils.Command, '__init__',
                            mock_command_constructor)

        def mock_command_run(obj, exec_path):
            stdout = ""
            stderr = ""
            rc = 1
            return stdout, stderr, rc

        monkeypatch.setattr(cmd_utils.Command, 'run', mock_command_run)

        service = ServiceStatus("tendrl-node-agent", '/tmp/')
        status = service.status()
        assert not status
Exemplo n.º 4
0
def get_service_info(service_name):
    service = ServiceStatus(service_name)
    return {"exists": service.exists(), "running": service.status()}