def test_getTaskOccurrenceForDate(self): taskDate = datetime.datetime(2020, 5, 17) task = Task() task.dueDateTime = taskDate entry = task.getTaskOccurrenceForDate(taskDate.date()) self.assertEqual(entry.task, task) self.assertEqual(entry.offset, 0)
def test_getTaskOccurrenceForDate_recurrent_endDate(self): taskDate = datetime.datetime(2020, 5, 17) task = Task() task.dueDateTime = taskDate task.recurrence = Recurrent() task.recurrence.setDaily(1) task.recurrence.endDate = taskDate.date() + timedelta(days=5) entry = task.getTaskOccurrenceForDate(taskDate.date() + timedelta(days=9)) self.assertEqual(entry, None)
def test_getTaskOccurrenceForDate_recurrent_far(self): taskDate = datetime.datetime(2020, 5, 17) task = Task() task.dueDateTime = taskDate task.recurrence = Recurrent() task.recurrence.setDaily(1) entry = task.getTaskOccurrenceForDate(taskDate.date() + timedelta(days=3333 * 366)) self.assertEqual(entry.task, task) self.assertEqual(entry.offset, 1219878)
def test_getTaskOccurrenceForDate_recurrent_completed(self): task = Task() todayDate = datetime.datetime.today() dueDate = todayDate.replace(day=8, hour=12) task.dueDateTime = dueDate task.recurrence = Recurrent() task.recurrence.setWeekly() task.setCompleted() ## mark first occurrence completed occurrence1 = task.getTaskOccurrenceForDate(dueDate.date() - timedelta(days=7)) self.assertEqual(occurrence1, None) occurrence2 = task.getTaskOccurrenceForDate(dueDate.date()) self.assertNotEqual(occurrence2, None) self.assertEqual(occurrence2.isCompleted(), True) occurrence3 = task.getTaskOccurrenceForDate(dueDate.date() + timedelta(days=7)) self.assertNotEqual(occurrence3, None) self.assertEqual(occurrence3.isCompleted(), False)