diff --git a/bdfr/downloader.py b/bdfr/downloader.py index 9dbafc9..3348628 100644 --- a/bdfr/downloader.py +++ b/bdfr/downloader.py @@ -468,6 +468,8 @@ class RedditDownloader: @staticmethod def _check_subreddit_status(subreddit: praw.models.Subreddit): + if subreddit.display_name == 'all': + return try: assert subreddit.id except prawcore.NotFound: diff --git a/tests/test_downloader.py b/tests/test_downloader.py index ef06a77..0a3418e 100644 --- a/tests/test_downloader.py +++ b/tests/test_downloader.py @@ -513,7 +513,20 @@ def test_check_user_existence_banned( ('donaldtrump', 'cannot be found'), ('submitters', 'private and cannot be scraped') )) -def test_check_subreddit_status(test_subreddit_name: str, expected_message: str, reddit_instance: praw.Reddit): +def test_check_subreddit_status_bad(test_subreddit_name: str, expected_message: str, reddit_instance: praw.Reddit): test_subreddit = reddit_instance.subreddit(test_subreddit_name) with pytest.raises(BulkDownloaderException, match=expected_message): RedditDownloader._check_subreddit_status(test_subreddit) + + +@pytest.mark.online +@pytest.mark.reddit +@pytest.mark.parametrize('test_subreddit_name', ( + 'Python', + 'Mindustry', + 'TrollXChromosomes', + 'all', +)) +def test_check_subreddit_status_good(test_subreddit_name: str, reddit_instance: praw.Reddit): + test_subreddit = reddit_instance.subreddit(test_subreddit_name) + RedditDownloader._check_subreddit_status(test_subreddit)