def test_update_incorrect_comments(database, reddit): comment_id1 = reddit_test.random_id() thread_id1 = reddit_test.random_id() comment1 = reddit_test.RedditObject( body=f"{static.TRIGGER}! 1 day", author="Watchful1", created=utils.datetime_now(), id=comment_id1, link_id="t3_" + thread_id1, permalink=f"/r/test/{thread_id1}/_/{comment_id1}/", subreddit="test") reddit.add_comment(comment1) comments.process_comment(comment1.get_pushshift_dict(), reddit, database) comment_id2 = reddit_test.random_id() thread_id2 = reddit_test.random_id() comment2 = reddit_test.RedditObject( body=f"{static.TRIGGER}! 1 day", author="Watchful1", created=utils.datetime_now(), id=comment_id2, link_id="t3_" + thread_id2, permalink=f"/r/test/{thread_id2}/_/{comment_id2}/", subreddit="test") reddit.add_comment(comment2) comments.process_comment(comment2.get_pushshift_dict(), reddit, database) comment_id3 = reddit_test.random_id() thread_id3 = reddit_test.random_id() comment3 = reddit_test.RedditObject( body=f"{static.TRIGGER}! 1 day", author="Watchful1", created=utils.datetime_now(), id=comment_id3, link_id="t3_" + thread_id3, permalink=f"/r/test/{thread_id3}/_/{comment_id3}/", subreddit="test") reddit.add_comment(comment3) comments.process_comment(comment3.get_pushshift_dict(), reddit, database) reminders = [ Reminder( source="https://www.reddit.com/message/messages/XXXXX", message=utils.reddit_link(comment1.permalink), user=database.get_or_add_user("Watchful1"), requested_date=utils.parse_datetime_string("2019-01-01 04:00:00"), target_date=utils.parse_datetime_string("2019-01-05 05:00:00")), Reminder( source="https://www.reddit.com/message/messages/XXXXX", message=utils.reddit_link(comment1.permalink), user=database.get_or_add_user("Watchful1"), requested_date=utils.parse_datetime_string("2019-01-01 04:00:00"), target_date=utils.parse_datetime_string("2019-01-06 05:00:00")), Reminder( source="https://www.reddit.com/message/messages/XXXXX", message=utils.reddit_link(comment1.permalink), user=database.get_or_add_user("Watchful1"), requested_date=utils.parse_datetime_string("2019-01-01 04:00:00"), target_date=utils.parse_datetime_string("2019-01-07 05:00:00")), Reminder( source="https://www.reddit.com/message/messages/XXXXX", message=utils.reddit_link(comment2.permalink), user=database.get_or_add_user("Watchful1"), requested_date=utils.parse_datetime_string("2019-01-01 04:00:00"), target_date=utils.parse_datetime_string("2019-01-08 05:00:00")), Reminder( source="https://www.reddit.com/message/messages/XXXXX", message=utils.reddit_link(comment2.permalink), user=database.get_or_add_user("Watchful1"), requested_date=utils.parse_datetime_string("2019-01-01 04:00:00"), target_date=utils.parse_datetime_string("2019-01-09 05:00:00")) ] for reminder in reminders: database.add_reminder(reminder) comments.update_comments(reddit, database) assert "3 OTHERS CLICKED THIS LINK" in reddit.get_comment( comment_id1).get_first_child().body assert "2 OTHERS CLICKED THIS LINK" in reddit.get_comment( comment_id2).get_first_child().body assert "CLICK THIS LINK" in reddit.get_comment( comment_id3).get_first_child().body
try: actions += comments.process_comments(reddit, database) except Exception as err: utils.process_error(f"Error processing comments", err, traceback.format_exc()) errors += 1 try: actions += notifications.send_reminders(reddit, database) except Exception as err: utils.process_error(f"Error sending notifications", err, traceback.format_exc()) errors += 1 if utils.time_offset(last_comments, minutes=30): try: comments.update_comments(reddit, database) last_comments = utils.datetime_now() except Exception as err: utils.process_error(f"Error updating comments", err, traceback.format_exc()) errors += 1 if not args.no_backup and utils.time_offset(last_backup, hours=12): try: database.backup() last_backup = utils.datetime_now() except Exception as err: utils.process_error(f"Error backing up database", err, traceback.format_exc()) errors += 1 log.debug("Run complete after: %d", int(time.perf_counter() - startTime))