Exemple #1
0
    def test_stop_timer_atomic(self, mock_reset):
        timer = TaskTimer(worker=self.worker, start_time=self.time)
        timer.save()
        time_entries_count = TimeEntry.objects.count()
        self.assertIsNone(timer.stop_time)

        with self.assertRaises(Exception):
            stop_timer(self.worker)

        # Verify that transaction rolled back.
        timer.refresh_from_db()
        self.assertIsNone(timer.stop_time)
        self.assertEqual(TimeEntry.objects.count(), time_entries_count)
    def test_stop_timer_atomic(self, mock_reset):
        timer = TaskTimer(worker=self.worker, start_time=self.time)
        timer.save()
        time_entries_count = TimeEntry.objects.count()
        self.assertIsNone(timer.stop_time)

        with self.assertRaises(Exception):
            stop_timer(self.worker)

        # Verify that transaction rolled back.
        timer.refresh_from_db()
        self.assertIsNone(timer.stop_time)
        self.assertEqual(TimeEntry.objects.count(), time_entries_count)
Exemple #3
0
    def test_stop_timer(self):
        timer = TaskTimer(worker=self.worker,
                          assignment=self.assignment,
                          start_time=self.time)
        timer.save()
        start_time = self.time
        self.time = self.time + datetime.timedelta(hours=1)
        time_entry = stop_timer(self.worker)

        # Time entry object is created correctly.
        self.assertEqual(time_entry.worker, self.worker)
        self.assertEqual(time_entry.date, start_time.date())
        self.assertEqual(time_entry.time_worked, datetime.timedelta(hours=1))
        self.assertEqual(time_entry.assignment, self.assignment)
        self.assertEqual(time_entry.timer_start_time, start_time)
        self.assertEqual(time_entry.timer_stop_time, self.time)

        # Timer object should be reset.
        timer.refresh_from_db()
        self.assertIsNone(timer.start_time)
        self.assertIsNone(timer.stop_time)
    def test_stop_timer(self):
        timer = TaskTimer(worker=self.worker,
                          assignment=self.assignment,
                          start_time=self.time)
        timer.save()
        start_time = self.time
        self.time = self.time + datetime.timedelta(hours=1)
        time_entry = stop_timer(self.worker)

        # Time entry object is created correctly.
        self.assertEqual(time_entry.worker, self.worker)
        self.assertEqual(time_entry.date, start_time.date())
        self.assertEqual(time_entry.time_worked, datetime.timedelta(hours=1))
        self.assertEqual(time_entry.assignment, self.assignment)
        self.assertEqual(time_entry.timer_start_time, start_time)
        self.assertEqual(time_entry.timer_stop_time, self.time)

        # Timer object should be reset.
        timer.refresh_from_db()
        self.assertIsNone(timer.start_time)
        self.assertIsNone(timer.stop_time)