def test_get_last_ten_weeks_reports(self): user = UserFactory.create() # Add 4 reports more than a day apart for i in range(8, 0, -2): NGReportFactory.create(user=user, report_date=(now().date() - timedelta(days=i))) # Get the reports added in the last 10 weeks eq_(count_user_ng_reports(user, period=10), 4)
def count_ng_reports(obj, current_streak=False, longest_streak=False, period=0): # Avoid circular dependencies from remo.reports import utils return utils.count_user_ng_reports(obj, current_streak, longest_streak, period)
def test_current_streak(self): user = UserFactory.create() # Add a report every 22 hours for the last 4 days (5 reports) for i in range(0, 4): NGReportFactory.create(user=user, report_date=(now().date() - timedelta(days=i))) eq_(count_user_ng_reports(user, current_streak=True), 4)
def test_longest_streak(self): user = UserFactory.create() past_day = now().date() - timedelta(days=30) # Add 7 continuous reports somewhere in the past for i in range(0, 7): NGReportFactory.create(user=user, report_date=(past_day - timedelta(days=i))) # Add a report, one each day for the last 4 days (6 reports) for i in range(0, 3): NGReportFactory.create(user=user, report_date=(now().date() - timedelta(days=i))) eq_(count_user_ng_reports(user, longest_streak=True), 7)
def test_longest_streak(self): user = UserFactory.create() past_day = utc_now().date() - timedelta(days=30) # Add 7 continuous reports somewhere in the past for i in range(7, 0, -1): NGReportFactory.create(user=user, report_date=(past_day - timedelta(days=i))) # Add a report, one each day for the last 4 days (5 reports) for i in range(6, 0, -1): NGReportFactory.create(user=user, report_date=(utc_now().date() - timedelta(days=i))) eq_(count_user_ng_reports(user, longest_streak=True), 7)