def test_isReminded(self): task = Task() task.dueDateTime = datetime.datetime.today() + datetime.timedelta( seconds=30) occurrence = task.currentOccurrence() self.assertEqual(occurrence.isReminded(), False)
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_isReminded_reminded(self): task = Task() task.dueDateTime = datetime.datetime.today() + datetime.timedelta( seconds=30) reminder = Reminder() reminder.setTime(0, 300) task.addReminder(reminder) occurrence = task.currentOccurrence() self.assertEqual(occurrence.isReminded(), True)
def test_getNotifications_due(self): task = Task() task.title = "task 1" task.dueDateTime = datetime.datetime.today() + datetime.timedelta( seconds=10) notifications = task.getNotifications() self.assertEqual(len(notifications), 1) self.assertEqual(notifications[0].task, task) self.assertEqual(notifications[0].message, "task 'task 1' reached deadline")
def test_date_current_subtask(self): task = Task() task.startDateTime = datetime.datetime(2020, 10, 10) task.dueDateTime = task.startDateTime + timedelta(days=1) subtask = task.addSubTask() subtask.setDeadline() # subtask.startDateTime = task.startDateTime - timedelta( days=5 ) subtask.dueDateTime = task.dueDateTime - timedelta(days=7) occurrence = task.currentOccurrence() self.assertEqual(occurrence.startCurrent, task.startDateTime) self.assertEqual(occurrence.dueCurrent, subtask.dueDateTime)
def test_getNotifications_reminder(self): task = Task() task.title = "task 1" task.dueDateTime = datetime.datetime.today() + datetime.timedelta( seconds=30) reminder = Reminder() reminder.setTime(0, 10) task.addReminder(reminder) notifications = task.getNotifications() self.assertEqual(len(notifications), 2) self.assertEqual(notifications[0].task, task) self.assertEqual(notifications[0].message, "task 'task 1': 0:00:10 before due time") self.assertEqual(notifications[1].task, task) self.assertEqual(notifications[1].message, "task 'task 1' reached deadline")
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)
app = QApplication(sys.argv) app.setApplicationName("Hanlendar") app.setOrganizationName("arnet") ### app.setOrganizationDomain("www.my-org.com") taskDate = datetime.today().replace( hour=8 ) task1 = Task() task1.title = "Completed Task" task1.description = "Description" task1.completed = 100 task1.priority = 5 task1.startDateTime = taskDate task1.dueDateTime = task1.startDateTime + timedelta( hours=4 ) task2 = Task() task2.title = "Task 1" task2.description = "Description" task2.completed = 0 task2.priority = 3 task2.setDefaultDateTime( taskDate + timedelta( hours=6 ) ) task3 = Task() task3.title = "Full Day Task" task3.description = "Description" task3.completed = 0 task3.priority = 3 task3.startDateTime = taskDate - timedelta( days=2 ) task3.dueDateTime = task3.startDateTime + timedelta( days=4 )