예제 #1
0
 def test_both_end_date_and_num_given(self):
     with self.assertRaisesRegex(Exception,
                                 "Wait. Either specify end_date OR num"):
         dates.date_range(datetime(2016, 1, 1),
                          datetime(2016, 1, 3),
                          num=2,
                          delta=timedelta(seconds=1))
예제 #2
0
 def test_both_end_date_and_num_given(self):
     with pytest.raises(Exception,
                        match="Wait. Either specify end_date OR num"):
         dates.date_range(datetime(2016, 1, 1),
                          datetime(2016, 1, 3),
                          num=2,
                          delta=timedelta(seconds=1))
예제 #3
0
    def test_delta_cron_presets(self):
        preset_range = dates.date_range(datetime(2016, 1, 1), num=2, delta="@hourly")
        timedelta_range = dates.date_range(datetime(2016, 1, 1), num=2, delta=timedelta(hours=1))
        cron_range = dates.date_range(datetime(2016, 1, 1), num=2, delta="0 * * * *")

        self.assertEqual(preset_range, timedelta_range)
        self.assertEqual(preset_range, cron_range)
예제 #4
0
 def test_end_date_before_start_date(self):
     with pytest.raises(
             Exception,
             match="Wait. start_date needs to be before end_date"):
         dates.date_range(datetime(2016, 2, 1),
                          datetime(2016, 1, 1),
                          delta=timedelta(seconds=1))
예제 #5
0
    def test_delta_cron_presets(self):
        preset_range = dates.date_range(datetime(2016, 1, 1),
                                        num=2,
                                        delta="@hourly")
        timedelta_range = dates.date_range(datetime(2016, 1, 1),
                                           num=2,
                                           delta=timedelta(hours=1))
        cron_range = dates.date_range(datetime(2016, 1, 1),
                                      num=2,
                                      delta="0 * * * *")

        assert preset_range == timedelta_range
        assert preset_range == cron_range
    def test_negative_num_given(self):
        for num in range(-1, -5, -10):
            result = dates.date_range(datetime(2016, 1, 1), num=num, delta=timedelta(1))
            self.assertEqual(len(result), -num)

            for i in range(num):
                self.assertTrue(timezone.is_localized(result[i]))
예제 #7
0
    def test_negative_num_given(self):
        for num in range(-1, -5, -10):
            result = dates.date_range(datetime(2016, 1, 1),
                                      num=num,
                                      delta=timedelta(1))
            assert len(result) == -num

            for i in range(num):
                assert timezone.is_localized(result[i])
 def test_invalid_delta(self):
     exception_msg = "Wait. delta must be either datetime.timedelta or cron expression as str"
     with self.assertRaisesRegex(Exception, exception_msg):
         dates.date_range(datetime(2016, 1, 1),
                          datetime(2016, 1, 3),
                          delta=1)
 def test_end_date_before_start_date(self):
     with self.assertRaisesRegex(Exception, "Wait. start_date needs to be before end_date"):
         dates.date_range(datetime(2016, 2, 1),
                          datetime(2016, 1, 1),
                          delta=timedelta(seconds=1))
 def test_no_delta(self):
     self.assertEqual(dates.date_range(datetime(2016, 1, 1), datetime(2016, 1, 3)),
                      [])
예제 #11
0
 def test_invalid_delta(self):
     exception_msg = "Wait. delta must be either datetime.timedelta or cron expression as str"
     with pytest.raises(Exception, match=exception_msg):
         dates.date_range(datetime(2016, 1, 1),
                          datetime(2016, 1, 3),
                          delta=1)
예제 #12
0
 def test_no_delta(self):
     assert dates.date_range(datetime(2016, 1, 1), datetime(2016, 1,
                                                            3)) == []