def test_excluded_ids(test_ids: tuple[str], test_excluded: tuple[str], expected_len: int, downloader_mock: MagicMock): downloader_mock.excluded_submission_ids = test_excluded test_submissions = [] for test_id in test_ids: m = MagicMock() m.id = test_id test_submissions.append(m) downloader_mock.reddit_lists = [test_submissions] RedditDownloader.download(downloader_mock) assert downloader_mock._download_submission.call_count == expected_len
def cli_download(context: click.Context, **_): config = Configuration() config.process_click_arguments(context) setup_logging(config.verbose) try: reddit_downloader = RedditDownloader(config) reddit_downloader.download() except Exception: logger.exception('Downloader exited unexpectedly') raise else: logger.info('Program complete')