ytdl-sub/tests/unit/cli/test_output_summary.py
2023-10-21 11:27:23 -07:00

32 lines
1.1 KiB
Python

from typing import List
from typing import Optional
from typing import Tuple
from unittest.mock import MagicMock
from unittest.mock import Mock
from ytdl_sub.cli.output_summary import output_summary
def test_output_summary_one_error():
subscription_values: List[Tuple[str, int, int, int, int, Optional[Exception]]] = [
("long_name_but_lil_values", 0, 0, 0, 6, None),
("john_smith", 1, 0, 0, 52, None),
("david_gore", 0, 0, 0, 4, None),
("christopher_snoop", 50, 0, 3, 518, None),
("beyond funk", 0, 0, 0, 176, ValueError("lol")),
]
mock_subscriptions: List[MagicMock] = []
for values in subscription_values:
sub = Mock()
sub.name = values[0]
sub.num_entries_added = values[1]
sub.num_entries_modified = values[2]
sub.num_entries_removed = values[3]
sub.num_entries = values[4]
sub.exception = values[5]
mock_subscriptions.append(sub)
_ = output_summary(subscriptions=mock_subscriptions)
assert True # Test used for manual inspection - too hard to test ansi color codes