def setUp(self):
self.tmp = tempfile.mkdtemp(dir='.')
- self.tw = TaskWarrior(data_location=self.tmp)
+ self.tw = TaskWarrior(data_location=self.tmp, taskrc_location='/')
def tearDown(self):
shutil.rmtree(self.tmp)
self.assertEqual(list(tasks), [t])
def test_filter_dummy_by_modified(self):
+ # Older TW version does not support bumping modified
+ # on save
+ if self.tw.version < six.text_type('2.2.0'):
+ # Python2.6 does not support SkipTest. As a workaround
+ # mark the test as passed by exiting.
+ if getattr(unittest, 'SkipTest', None) is not None:
+ raise unittest.SkipTest()
+ else:
+ return
+
t = Task(self.tw, description="test")
t.save()
t = Task(self.tw, description="test task")
self.assertRaises(Task.NotSaved, t.refresh)
+ def test_start_unsaved_task(self):
+ t = Task(self.tw, description="test task")
+ self.assertRaises(Task.NotSaved, t.start)
+
def test_delete_deleted_task(self):
t = Task(self.tw, description="test task")
t.save()
self.assertRaises(Task.CompletedTask, t.done)
+ def test_start_completed_task(self):
+ t = Task(self.tw, description="test task")
+ t.save()
+ t.done()
+
+ self.assertRaises(Task.CompletedTask, t.start)
+
def test_complete_deleted_task(self):
t = Task(self.tw, description="test task")
t.save()
self.assertRaises(Task.DeletedTask, t.done)
+ def test_start_completed_task(self):
+ t = Task(self.tw, description="test task")
+ t.save()
+ t.done()
+
+ self.assertRaises(Task.CompletedTask, t.start)
+
+ def test_starting_task(self):
+ t = Task(self.tw, description="test task")
+ now = t.datetime_normalizer(datetime.datetime.now())
+ t.save()
+ t.start()
+
+ self.assertTrue(now.replace(microsecond=0) <= t['start'])
+ self.assertEqual(t['status'], 'pending')
+
+ def test_completing_task(self):
+ t = Task(self.tw, description="test task")
+ now = t.datetime_normalizer(datetime.datetime.now())
+ t.save()
+ t.done()
+
+ self.assertTrue(now.replace(microsecond=0) <= t['end'])
+ self.assertEqual(t['status'], 'completed')
+
+ def test_deleting_task(self):
+ t = Task(self.tw, description="test task")
+ now = t.datetime_normalizer(datetime.datetime.now())
+ t.save()
+ t.delete()
+
+ self.assertTrue(now.replace(microsecond=0) <= t['end'])
+ self.assertEqual(t['status'], 'deleted')
+
def test_modify_simple_attribute_without_space(self):
t = Task(self.tw, description="test")
t.save()