X-Git-Url: https://git.madduck.net/etc/taskwarrior.git/blobdiff_plain/98a9ea60e0c22e140650ff5a89dfd544d9c05cb0..64d705f5e5784fea6fa6023902ec14d336445f12:/tasklib/tests.py diff --git a/tasklib/tests.py b/tasklib/tests.py index 2fa1371..2103c06 100644 --- a/tasklib/tests.py +++ b/tasklib/tests.py @@ -70,6 +70,50 @@ class TaskFilterTest(TasklibTest): self.assertEqual(no_priority_task['description'], "no priority task") +class TaskTest(TasklibTest): + + def test_create_unsaved_task(self): + # Make sure a new task is not saved unless explicitly called for + t = Task(self.tw, description="test task") + self.assertEqual(len(self.tw.tasks.all()), 0) + + # TODO: once python 2.6 compatiblity is over, use context managers here + # and in all subsequent tests for assertRaises + + def test_delete_unsaved_task(self): + t = Task(self.tw, description="test task") + self.assertRaises(Task.NotSaved, t.delete) + + def test_complete_unsaved_task(self): + t = Task(self.tw, description="test task") + self.assertRaises(Task.NotSaved, t.done) + + def test_refresh_unsaved_task(self): + t = Task(self.tw, description="test task") + self.assertRaises(Task.NotSaved, t.refresh) + + def test_delete_deleted_task(self): + t = Task(self.tw, description="test task") + t.save() + t.delete() + + self.assertRaises(Task.DeletedTask, t.delete) + + def test_complete_completed_task(self): + t = Task(self.tw, description="test task") + t.save() + t.done() + + self.assertRaises(Task.CompletedTask, t.done) + + def test_complete_deleted_task(self): + t = Task(self.tw, description="test task") + t.save() + t.delete() + + self.assertRaises(Task.DeletedTask, t.done) + + class AnnotationTest(TasklibTest): def setUp(self):