Пример #1
0
 def test_start_time(self):
     # Setting any of the start times and saving changes the `start_time` field
     tz = timezone(settings.TIME_ZONE)
     d1 = tz.localize(datetime.datetime(2014, 1, 1, 13, 2, 0))
     e = ElectionFactory(polling_start_time=d1)
     e = Election.objects.get(pk=e.pk)
     # The earliest time will be the work_start_time, which is on midnight,
     # 2 days before
     work_start = at_midnight(d1 - datetime.timedelta(days=2))
     self.assertEqual(work_start, e.work_start_time)
     self.assertEqual(work_start, e.start_time)
     d3 = tz.localize(datetime.datetime(2013, 12, 31, 1, 1))
     e.polling_start_time = d3
     e.save()
     e = Election.objects.get(pk=e.pk)
     work_start = at_midnight(d3 - datetime.timedelta(days=2))
     self.assertEqual(work_start, e.start_time)
Пример #2
0
 def test_start_time(self):
     # Setting any of the start times and saving changes the `start_time` field
     tz = timezone(settings.TIME_ZONE)
     d1 = tz.localize(datetime.datetime(2014, 1, 1, 13, 2, 0))
     e = ElectionFactory(polling_start_time=d1)
     e = Election.objects.get(pk=e.pk)
     # The earliest time will be the work_start_time, which is on midnight,
     # 2 days before
     work_start = at_midnight(d1 - datetime.timedelta(days=2))
     self.assertEqual(work_start, e.work_start_time)
     self.assertEqual(work_start, e.start_time)
     d3 = tz.localize(datetime.datetime(2013, 12, 31, 1, 1))
     e.polling_start_time = d3
     e.save()
     e = Election.objects.get(pk=e.pk)
     work_start = at_midnight(d3 - datetime.timedelta(days=2))
     self.assertEqual(work_start, e.start_time)
Пример #3
0
 def save(self, *args, **kwargs):
     """
     Set start and end times to the earliest and latest timestamp fields
     that are set, or None.
     NOTE: Update this code when we add more time fields
     """
     self.work_start_time = at_midnight(self.polling_start_time - timedelta(hours=48))
     self.work_end_time = self.polling_end_time + timedelta(hours=16)
     self.start_time = min_non_none_datetime(self.work_start_time, self.polling_start_time)
     self.end_time = max_non_none_datetime(self.work_end_time, self.polling_end_time)
     super(Election, self).save(*args, **kwargs)
Пример #4
0
 def save(self, *args, **kwargs):
     """
     Set start and end times to the earliest and latest timestamp fields
     that are set, or None.
     NOTE: Update this code when we add more time fields
     """
     self.work_start_time = at_midnight(self.polling_start_time -
                                        timedelta(hours=48))
     self.work_end_time = self.polling_end_time + timedelta(hours=16)
     self.start_time = min_non_none_datetime(
         self.work_start_time,
         self.polling_start_time,
     )
     self.end_time = max_non_none_datetime(
         self.work_end_time,
         self.polling_end_time,
     )
     super(Election, self).save(*args, **kwargs)