Skip to content

Commit

Permalink
Tests: User to be warned about incorrect output type
Browse files Browse the repository at this point in the history
Test if the error message for the situation is descriptive and
user-friendly  when the output_type provided in the cfg file is incorrect.

Related: https://bugzilla.redhat.com/show_bug.cgi?id=2079698

Signed-off-by: Michal Polovka <mpolovka@redhat.com>
  • Loading branch information
miskopo authored and rcritten committed May 24, 2022
1 parent b42dc1c commit 7e8ef44
Showing 1 changed file with 34 additions and 0 deletions.
34 changes: 34 additions & 0 deletions tests/test_options.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,10 @@
#

import argparse
import io
import os
import tempfile
from contextlib import redirect_stdout
from unittest.mock import patch

from ipahealthcheck.core.core import RunChecks
Expand Down Expand Up @@ -70,3 +72,35 @@ def test_cfg_file_debug_option(mock_parse, mock_run, mock_service):
assert run.options.debug
finally:
os.remove(config_path)


@patch('ipahealthcheck.core.core.run_service_plugins')
@patch('ipahealthcheck.core.core.run_plugins')
@patch('ipahealthcheck.core.core.parse_options')
def test_incorrect_output_type_cfg_file(mock_parse, mock_run, mock_service):
"""
Test the error message is user-friendly if the incorrect output type is
provided in cfg file
Related: https://bugzilla.redhat.com/show_bug.cgi?id=2079698
"""
mock_service.return_value = (Results(), [])
mock_run.return_value = Results()
mock_parse.return_value = options
fd, config_path = tempfile.mkstemp()
os.close(fd)
with open(config_path, "w") as fd:
fd.write('[default]\n')
fd.write('output_type=42\n')

try:
run = RunChecks([], config_path)

f = io.StringIO()
with redirect_stdout(f):
run.run_healthcheck()

assert "Unknown output-type" in f.getvalue()

finally:
os.remove(config_path)

0 comments on commit 7e8ef44

Please sign in to comment.