def test_is_today(self): now = datetime.now() self.assertTrue(is_today(now)) self.assertTrue(is_today(last_midnight())) self.assertTrue(is_today(last_midnight()+timedelta(seconds=1))) self.assertFalse(is_today(last_midnight()-timedelta(seconds=1))) self.assertFalse(is_today(now-timedelta(days=1)))
def test_is_over_2_years_ago(self): now = datetime.now() self.assertFalse(get_past_years_count(now-timedelta(days=365*2))==2) self.assertTrue(get_past_years_count(last_midnight()-timedelta(days=365*2))==2) self.assertTrue(get_past_years_count(now-timedelta(days=731))==2) self.assertTrue(get_past_years_count(now-timedelta(days=365*3))==2) self.assertFalse(get_past_years_count(last_midnight()-timedelta(days=365*3))==2) self.assertFalse(get_past_years_count(now-timedelta(days=1096))==2)
def test_is_yesterday(self): now = datetime.now() self.assertFalse(is_days_ago(last_midnight()+timedelta(seconds=1), 1)) self.assertTrue(is_days_ago(last_midnight(), 1)) self.assertTrue(is_days_ago(now-timedelta(days=1), 1)) self.assertTrue( is_days_ago(last_midnight()-timedelta(days=1)+timedelta(seconds=1), 1)) self.assertTrue(is_days_ago(last_midnight()-timedelta(days=1), 1)) self.assertFalse( is_days_ago(last_midnight()-timedelta(days=1)-timedelta(seconds=1), 1)) self.assertFalse(is_days_ago(now-timedelta(days=2), 1))
def test_is_a_week_ago(self): now = datetime.now() self.assertFalse( is_days_ago(last_midnight()-timedelta(days=6)+timedelta(seconds=1),7)) self.assertTrue(is_days_ago(last_midnight()-timedelta(days=6),7)) self.assertTrue( is_days_ago(last_midnight()-timedelta(days=7)+timedelta(seconds=1),7)) self.assertTrue(is_days_ago(now-timedelta(weeks=1),7)) self.assertTrue(is_days_ago(now-timedelta(days=7),7)) self.assertFalse( is_days_ago(last_midnight()-timedelta(days=7)-timedelta(seconds=1),7)) self.assertFalse(is_days_ago(now-timedelta(days=8),7))
def test_is_over_3_weeks_ago(self): now = datetime.now() self.assertFalse(get_past_weeks_count(now-timedelta(days=21))==3) self.assertTrue(get_past_weeks_count(last_midnight()-timedelta(days=21))==3) self.assertTrue(get_past_weeks_count(now-timedelta(days=22))==3) self.assertTrue(get_past_weeks_count(now-timedelta(days=27))==3) self.assertTrue(get_past_weeks_count(now-timedelta(days=28))==3) self.assertTrue( get_past_weeks_count( last_midnight()-timedelta(days=28)+timedelta(seconds=1))==3) self.assertFalse( get_past_weeks_count(last_midnight()-timedelta(days=28))==3) self.assertFalse(get_past_weeks_count(now-timedelta(days=29))==3)
def test_is_days_ago(self): now = datetime.now() self.assertTrue(is_days_ago(last_midnight()-timedelta(days=1), 2)) self.assertTrue( is_days_ago(last_midnight()-timedelta(days=1)-timedelta(seconds=1), 2)) self.assertTrue(is_days_ago(now-timedelta(days=2), 2)) self.assertTrue(is_days_ago(last_midnight()-timedelta(days=2), 2)) self.assertFalse( is_days_ago(last_midnight()-timedelta(days=2)-timedelta(seconds=1), 2)) self.assertTrue(is_days_ago(now-timedelta(days=3), 3)) self.assertTrue(is_days_ago(now-timedelta(days=4), 4)) self.assertTrue(is_days_ago(now-timedelta(days=5), 5)) self.assertTrue(is_days_ago(now-timedelta(days=6), 6))
def test_is_over_3_months_ago(self): now = datetime.now() self.assertFalse(get_past_months_count(now-timedelta(days=84))==3) self.assertFalse( get_past_months_count( last_midnight()-timedelta(days=84)+timedelta(seconds=1))==3) self.assertTrue(get_past_months_count(last_midnight()-timedelta(days=84))==3) self.assertTrue(get_past_months_count(now-timedelta(days=85))==3) self.assertTrue(get_past_months_count(now-timedelta(days=112))==3) self.assertTrue( get_past_months_count( last_midnight()-timedelta(days=112)+timedelta(seconds=1))==3) self.assertFalse(get_past_months_count(last_midnight()-timedelta(days=112))==3) self.assertFalse(get_past_months_count(now-timedelta(days=113))==3)
def test_is_over_1_month_ago(self): now = datetime.now() self.assertFalse( get_past_months_count( last_midnight()-timedelta(days=28)+timedelta(seconds=1))==1) self.assertTrue(get_past_months_count(last_midnight()-timedelta(days=28))==1) self.assertTrue(get_past_months_count(now-timedelta(days=29))==1) self.assertTrue(get_past_months_count(now-timedelta(days=56))==1) self.assertTrue( get_past_months_count( last_midnight()-timedelta(days=56)+timedelta(seconds=1))==1) self.assertFalse( get_past_months_count(last_midnight()-timedelta(days=56))==1) self.assertFalse(get_past_months_count(now-timedelta(days=57))==1)
def test_is_over_1_week_ago(self): now = datetime.now() self.assertFalse( get_past_weeks_count(now-timedelta(days=7))==1) self.assertFalse( get_past_weeks_count( last_midnight()-timedelta(days=7)+timedelta(seconds=1))==1) self.assertTrue( get_past_weeks_count(last_midnight()-timedelta(days=7))==1) self.assertTrue(get_past_weeks_count(now-timedelta(days=8))==1) self.assertTrue(get_past_weeks_count(now-timedelta(days=14))==1) self.assertTrue( get_past_weeks_count( last_midnight()-timedelta(days=14)+timedelta(seconds=1))==1) self.assertFalse( get_past_weeks_count(last_midnight()-timedelta(days=14))==1) self.assertFalse(get_past_weeks_count(now-timedelta(days=15))==1)
def test_past_datetime_str_over_weeks_ago(self): day = datetime.now() - timedelta(days=8) self.assertEquals(past_datetime_str(day), 'over 1 week ago') day = datetime.now() - timedelta(days=14) self.assertEquals(past_datetime_str(day), 'over 1 week ago') day = last_midnight() - timedelta(days=14) self.assertEquals(past_datetime_str(day), 'over 2 weeks ago') day = datetime.now() - timedelta(days=15) self.assertEquals(past_datetime_str(day), 'over 2 weeks ago') day = datetime.now() - timedelta(days=21) self.assertEquals(past_datetime_str(day), 'over 2 weeks ago') day = last_midnight() - timedelta(days=21) self.assertEquals(past_datetime_str(day), 'over 3 weeks ago') day = datetime.now() - timedelta(days=22) self.assertEquals(past_datetime_str(day), 'over 3 weeks ago') day = datetime.now() - timedelta(days=28) self.assertEquals(past_datetime_str(day), 'over 3 weeks ago')
def test_last_midnight(self): now = datetime.now() self.assertEquals(last_midnight(), datetime(now.year, now.month, now.day, 0, 0, 0, 0))