update unittest

This commit is contained in:
Suhas 2021-02-06 21:28:50 -05:00
parent 694ba3bad6
commit 9d60911a14

View file

@ -2,22 +2,39 @@ import argparse
import jrnl import jrnl
import pytest import pytest
import mock import mock
from jrnl.jrnl import _export_journal, _display_search_results from jrnl.jrnl import _export_journal
@pytest.mark.parametrize( @pytest.mark.parametrize(
"export_format", "export_format",
[ [
"pretty", "pretty",
"short", "short",
"markdown",
"json"
] ]
) )
@mock.patch.object(argparse,'Namespace',autospec=True) @mock.patch.object(argparse,'Namespace',return_value={"export":None,"filename":None})
@mock.patch.object(jrnl,'Journal',autospec=True) def test_export_format(mock_args,export_format):
def test_export_format(mock_journal, mock_args, export_format):
test_journal = jrnl.Journal.Journal
mock_args.export = export_format mock_args.export = export_format
mock_args.filename = "foo.jrnl" mock_args.filename = "foo.jrnl"
with mock.patch('builtins.print', wraps=print) as print_spy: with mock.patch('builtins.print') as print_spy, \
_export_journal(mock_args,mock_journal) mock.patch('jrnl.Journal.Journal.pprint') as mock_pprint:
print_spy.assert_called_once() _export_journal(mock_args,test_journal)
print_spy.call_args_list = mock_pprint
@mock.patch.object(argparse,'Namespace',return_value={"export":None,"filename":None})
def test_export_plugin(mock_args):
export_format = "markdown"
test_journal = jrnl.Journal.Journal
mock_args.export = export_format
mock_args.filename = "foo.jrnl"
with mock.patch('builtins.print') as print_spy, \
mock.patch('jrnl.plugins.get_exporter') as mock_get_exporter,\
mock.patch('jrnl.Journal.Journal.pprint') as mock_pprint:
_export_journal(mock_args,test_journal)
print_spy.call_args_list = mock_pprint
mock_get_exporter.assert_called_once_with(export_format)