Commit a33bc978 authored by Bram Schoenmakers's avatar Bram Schoenmakers

Refuse to mark completed tasks as complete.

parent 9d5b4b84
......@@ -152,12 +152,13 @@ class TodoBase(object):
Marks the todo as complete.
Sets the completed flag and sets the completion date to today.
"""
self.fields['completed'] = True
today = datetime.date.today()
self.fields['completionDate'] = today
if not self.fields['completed']:
self.fields['completed'] = True
today = datetime.date.today()
self.fields['completionDate'] = today
self.src = re.sub(r'^(\([A-Z]\) )?', \
'x ' + today.isoformat() + ' ', self.src)
self.src = re.sub(r'^(\([A-Z]\) )?', \
'x ' + today.isoformat() + ' ', self.src)
def __str__(self):
""" A printer for the todo item. """
......
......@@ -186,6 +186,12 @@ class TodoBaseTester(unittest.TestCase):
self.assertEquals(todo.fields['completionDate'], today)
self.assertTrue(re.match('^x ' + today_str + ' 2014-06-12 Foo', todo.src))
def test_set_complete5(self):
todo = TodoBase.TodoBase("x 2014-06-13 Foo")
todo.set_completed()
self.assertEquals(todo.src, "x 2014-06-13 Foo")
def test_set_text(self):
todo = TodoBase.TodoBase("(B) Foo")
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment