1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- import pytest
- from openshift_checks.diagnostics import DiagnosticCheck, OpenShiftCheckException
- @pytest.fixture()
- def task_vars():
- return dict(
- openshift=dict(
- common=dict(config_base="/etc/origin/")
- )
- )
- def test_module_succeeds(task_vars):
- check = DiagnosticCheck(lambda *_: {"result": "success"}, task_vars)
- check.is_first_master = lambda: True
- assert check.is_active()
- check.exec_diagnostic("spam")
- assert not check.failures
- def test_oc_not_there(task_vars):
- def exec_module(*_):
- return {"failed": True, "result": "[Errno 2] No such file or directory"}
- check = DiagnosticCheck(exec_module, task_vars)
- with pytest.raises(OpenShiftCheckException) as excinfo:
- check.exec_diagnostic("spam")
- assert excinfo.value.name == "OcNotFound"
- def test_module_fails(task_vars):
- def exec_module(*_):
- return {"failed": True, "result": "something broke"}
- check = DiagnosticCheck(exec_module, task_vars)
- check.exec_diagnostic("spam")
- assert check.failures and check.failures[0].name == "OcDiagFailed"
- def test_names_executed(task_vars):
- task_vars["openshift_check_diagnostics"] = diagnostics = "ConfigContexts,spam,,eggs"
- def exec_module(module, args, *_):
- assert "extra_args" in args
- assert args["extra_args"][0] in diagnostics
- return {"result": "success"}
- DiagnosticCheck(exec_module, task_vars).run()
|