1
0
Fork 0
mirror of synced 2024-06-02 18:34:37 +12:00

Connector test edge case

Covers edge case of not having the exact amount as the limit, now allows between one and the limit.
This commit is contained in:
OMEGARAZER 2023-06-05 19:59:37 -04:00
parent 54b242fe9c
commit 1d95778b03
No known key found for this signature in database
GPG key ID: D89925310D306E35

View file

@ -3,6 +3,7 @@
from collections.abc import Iterator
from datetime import datetime, timedelta
from pathlib import Path
from typing import Union
from unittest.mock import MagicMock
import praw
@ -37,21 +38,23 @@ def downloader_mock(args: Configuration):
return downloader_mock
def assert_all_results_are_submissions(result_limit: int, results: list[Iterator]) -> list:
def assert_all_results_are_submissions(result_limit: Union[int, None], results: list[Iterator]) -> list:
results = [sub for res in results for sub in res]
assert all([isinstance(res, praw.models.Submission) for res in results])
assert not any([isinstance(m, MagicMock) for m in results])
if result_limit is not None:
assert len(results) == result_limit
assert len(results) > 0
assert len(results) <= result_limit
return results
def assert_all_results_are_submissions_or_comments(result_limit: int, results: list[Iterator]) -> list:
def assert_all_results_are_submissions_or_comments(result_limit: Union[int, None], results: list[Iterator]) -> list:
results = [sub for res in results for sub in res]
assert all([isinstance(res, (praw.models.Submission, praw.models.Comment)) for res in results])
assert not any([isinstance(m, MagicMock) for m in results])
if result_limit is not None:
assert len(results) == result_limit
assert len(results) > 0
assert len(results) <= result_limit
return results