#!/usr/bin/env python3 # -*- coding: utf-8 -*- import praw import pytest from bdfr.archive_entry.submission_archive_entry import SubmissionArchiveEntry @pytest.mark.online @pytest.mark.reddit @pytest.mark.parametrize(("test_submission_id", "min_comments"), (("m3reby", 27),)) def test_get_comments(test_submission_id: str, min_comments: int, reddit_instance: praw.Reddit): test_submission = reddit_instance.submission(id=test_submission_id) test_archive_entry = SubmissionArchiveEntry(test_submission) results = test_archive_entry._get_comments() assert len(results) >= min_comments @pytest.mark.online @pytest.mark.reddit @pytest.mark.parametrize( ("test_submission_id", "expected_dict"), ( ( "m3reby", { "author": "sinjen-tos", "id": "m3reby", "link_flair_text": "image", "pinned": False, "spoiler": False, "over_18": False, "locked": False, "distinguished": None, "created_utc": 1615583837, "permalink": "/r/australia/comments/m3reby/this_little_guy_fell_out_of_a_tree_and_in_front/", }, ), # TODO: add deleted user test case ), ) def test_get_post_details(test_submission_id: str, expected_dict: dict, reddit_instance: praw.Reddit): test_submission = reddit_instance.submission(id=test_submission_id) test_archive_entry = SubmissionArchiveEntry(test_submission) test_archive_entry._get_post_details() assert all([test_archive_entry.post_details.get(key) == expected_dict[key] for key in expected_dict.keys()])