Add integration test for downloader option
This commit is contained in:
@@ -53,7 +53,8 @@ class RedditDownloader(RedditConnector):
|
|||||||
return
|
return
|
||||||
elif submission.author.name in self.args.ignore_user:
|
elif submission.author.name in self.args.ignore_user:
|
||||||
logger.debug(
|
logger.debug(
|
||||||
f'Submission {submission.id} in {submission.subreddit.display_name} by {submission.author.name} an ignored user')
|
f'Submission {submission.id} in {submission.subreddit.display_name} skipped'
|
||||||
|
f' due to {submission.author.name} being an ignored user')
|
||||||
return
|
return
|
||||||
elif not isinstance(submission, praw.models.Submission):
|
elif not isinstance(submission, praw.models.Submission):
|
||||||
logger.warning(f'{submission.id} is not a submission')
|
logger.warning(f'{submission.id} is not a submission')
|
||||||
|
|||||||
@@ -337,3 +337,18 @@ def test_cli_download_include_id_file(tmp_path: Path):
|
|||||||
result = runner.invoke(cli, test_args)
|
result = runner.invoke(cli, test_args)
|
||||||
assert result.exit_code == 0
|
assert result.exit_code == 0
|
||||||
assert 'Downloaded submission' in result.output
|
assert 'Downloaded submission' in result.output
|
||||||
|
|
||||||
|
|
||||||
|
@pytest.mark.online
|
||||||
|
@pytest.mark.reddit
|
||||||
|
@pytest.mark.skipif(not does_test_config_exist, reason='A test config file is required for integration tests')
|
||||||
|
@pytest.mark.parametrize('test_args', (
|
||||||
|
['--ignore-user', 'ArjanEgges', '-l', 'm3hxzd'],
|
||||||
|
))
|
||||||
|
def test_cli_download_ignore_user(test_args: list[str], tmp_path: Path):
|
||||||
|
runner = CliRunner()
|
||||||
|
test_args = create_basic_args_for_download_runner(test_args, tmp_path)
|
||||||
|
result = runner.invoke(cli, test_args)
|
||||||
|
assert result.exit_code == 0
|
||||||
|
assert 'Downloaded submission' not in result.output
|
||||||
|
assert 'being an ignored user' in result.output
|
||||||
|
|||||||
Reference in New Issue
Block a user