diff --git a/tests/lib/fixtures.py b/tests/lib/fixtures.py index 8d820db6..22ec5f59 100644 --- a/tests/lib/fixtures.py +++ b/tests/lib/fixtures.py @@ -195,6 +195,8 @@ def mock_password(request): if not password: password = Exception("Unexpected call for password") + # @todo replace with with rich.console.Console().input(password=True) + # since getpass is no longer used return patch("getpass.getpass", side_effect=password) return {"getpass": _mock_password} diff --git a/tests/unit/test_output.py b/tests/unit/test_output.py new file mode 100644 index 00000000..050375ff --- /dev/null +++ b/tests/unit/test_output.py @@ -0,0 +1,27 @@ +# Copyright (C) 2012-2021 jrnl contributors +# License: https://www.gnu.org/licenses/gpl-3.0.html +from unittest.mock import Mock +from unittest.mock import patch + +from jrnl.messages import Message +from jrnl.output import print_msg + + +@patch("jrnl.output.print_msgs") +def test_print_msg_calls_print_msgs_as_list_with_style(print_msgs): + test_msg = Mock(Message) + print_msg(test_msg) + print_msgs.assert_called_once_with([test_msg], style=test_msg.style) + + +@patch("jrnl.output.print_msgs") +def test_print_msg_calls_print_msgs_with_kwargs(print_msgs): + test_msg = Mock(Message) + kwargs = { + "delimter": "test delimiter 🤡", + "get_input": True, + "screen_input": True, + "some_rando_arg": "💩", + } + print_msg(test_msg, **kwargs) + print_msgs.assert_called_once_with([test_msg], style=test_msg.style, **kwargs)