1
0
This repository has been archived on 2021-07-27. You can view files and clone it, but cannot push or open issues or pull requests.
todo.txt_telegram/Task_tests.py

136 lines
5.1 KiB
Python
Executable File

#!/usr/bin/env python3
import unittest
import datetime
from Task import Task as T
class TaskTestCase(unittest.TestCase):
def test_basic(self):
text = "task"
task = T(text)
self.assertEqual(str(task), text)
self.assertEqual(task.done, False)
self.assertEqual(task.priority, '{')
self.assertEqual(task.completion_date, None)
self.assertEqual(task.creation_date, None)
self.assertEqual(task.projects, [])
self.assertEqual(task.contexts, [])
self.assertEqual(task.specials, [])
def test_basic_done(self):
text = "x basic test task"
task = T(text)
self.assertEqual(str(task), text)
self.assertEqual(task.done, True)
self.assertEqual(task.priority, '{')
self.assertEqual(task.completion_date, None)
self.assertEqual(task.creation_date, None)
self.assertEqual(task.projects, [])
self.assertEqual(task.contexts, [])
self.assertEqual(task.specials, [])
def test_prioritized(self):
text = "(A) prioritized test task"
task = T(text)
self.assertEqual(str(task), text)
self.assertEqual(task.done, False)
self.assertEqual(task.priority, 'A')
self.assertEqual(task.completion_date, None)
self.assertEqual(task.creation_date, None)
self.assertEqual(task.projects, [])
self.assertEqual(task.contexts, [])
self.assertEqual(task.specials, [])
def test_prioritized_ignore_incorrect(self):
text = "(AA) prioritized test task"
task = T(text)
self.assertEqual(str(task), text)
self.assertEqual(task.done, False)
self.assertEqual(task.priority, '{')
self.assertEqual(task.completion_date, None)
self.assertEqual(task.creation_date, None)
self.assertEqual(task.projects, [])
self.assertEqual(task.contexts, [])
self.assertEqual(task.specials, [])
def test_prioritized_done(self):
text = "x (A) prioritized test task"
task = T(text)
self.assertEqual(str(task), text)
self.assertEqual(task.done, True)
self.assertEqual(task.priority, 'A')
self.assertEqual(task.completion_date, None)
self.assertEqual(task.creation_date, None)
self.assertEqual(task.projects, [])
self.assertEqual(task.contexts, [])
self.assertEqual(task.specials, [])
def test_with_creation_date(self):
text = "2018-06-24 test task"
task = T(text)
self.assertEqual(str(task), text)
self.assertEqual(task.done, False)
self.assertEqual(task.priority, '{')
self.assertEqual(task.completion_date, None)
self.assertEqual(task.creation_date,
datetime.datetime(2018, 6, 24, 0, 0))
self.assertEqual(task.projects, [])
self.assertEqual(task.contexts, [])
self.assertEqual(task.specials, [])
def test_with_creation_and_completion_date(self):
text = "x 2018-06-24 2018-05-24 test task"
task = T(text)
self.assertEqual(str(task), text)
self.assertEqual(task.done, True)
self.assertEqual(task.priority, '{')
self.assertEqual(task.completion_date,
datetime.datetime(2018, 6, 24, 0, 0))
self.assertEqual(task.creation_date,
datetime.datetime(2018, 5, 24, 0, 0))
self.assertEqual(task.projects, [])
self.assertEqual(task.contexts, [])
self.assertEqual(task.specials, [])
def test_with_creation_and_completion_and_priority_date(self):
text = "x (B) 2018-06-24 2018-05-24 test task"
task = T(text)
self.assertEqual(str(task), text)
self.assertEqual(task.done, True)
self.assertEqual(task.priority, 'B')
self.assertEqual(task.completion_date,
datetime.datetime(2018, 6, 24, 0, 0))
self.assertEqual(task.creation_date,
datetime.datetime(2018, 5, 24, 0, 0))
self.assertEqual(task.projects, [])
self.assertEqual(task.contexts, [])
self.assertEqual(task.specials, [])
def test_special(self):
text = "special task special:value"
task = T(text)
self.assertEqual(str(task), text)
self.assertEqual(task.done, False)
self.assertEqual(task.priority, '{')
self.assertEqual(task.completion_date, None)
self.assertEqual(task.creation_date, None)
self.assertEqual(task.projects, [])
self.assertEqual(task.contexts, [])
self.assertEqual(task.specials, [{"special": "value"}])
def test_specials_with_colons(self):
text = "give muffin her pen back due:2028-07-10T14:28:15Z+0100"
task = T(text)
self.assertEqual(str(task), text)
self.assertEqual(task.done, False)
self.assertEqual(task.priority, '{')
self.assertEqual(task.completion_date, None)
self.assertEqual(task.creation_date, None)
self.assertEqual(task.projects, [])
self.assertEqual(task.contexts, [])
self.assertEqual(task.specials, [{"due": "2028-07-10T14:28:15Z+0100"}])
unittest.main()