21 lines
644 B
Python
21 lines
644 B
Python
|
from unittest.mock import call
|
||
|
|
||
|
from afancontrol import report
|
||
|
from afancontrol.report import Report
|
||
|
|
||
|
|
||
|
def test_report_success(sense_exec_shell_command):
|
||
|
r = Report(r"printf '@%s' '%REASON%' '%MESSAGE%'")
|
||
|
|
||
|
with sense_exec_shell_command(report) as (mock_exec_shell_command, get_stdout):
|
||
|
r.report("reason here", "message\nthere")
|
||
|
assert mock_exec_shell_command.call_args == call(
|
||
|
"printf '@%s' 'reason here' 'message\nthere'"
|
||
|
)
|
||
|
assert ["@reason here@message\nthere"] == get_stdout()
|
||
|
|
||
|
|
||
|
def test_report_fail_does_not_raise():
|
||
|
r = Report("false")
|
||
|
r.report("reason here", "message\nthere")
|