]>
git.madduck.net Git - etc/taskwarrior.git/blobdiff - tasklib/tests.py
madduck's git repository
Every one of the projects in this repository is available at the canonical
URL git://git.madduck.net/madduck/pub/<projectpath> — see
each project's metadata for the exact URL.
All patches and comments are welcome. Please squash your changes to logical
commits before using git-format-patch and git-send-email to
patches@ git. madduck. net .
If you'd read over the Git project's submission guidelines and adhered to them,
I'd be especially grateful.
SSH access, as well as push access can be individually
arranged .
If you use my repositories frequently, consider adding the following
snippet to ~/.gitconfig and using the third clone URL listed for each
project:
[url "git://git.madduck.net/madduck/"]
insteadOf = madduck:
filtered_task = self.tw.tasks.get(project="random")
self.assertEqual(filtered_task['project'], "random")
filtered_task = self.tw.tasks.get(project="random")
self.assertEqual(filtered_task['project'], "random")
+ def test_filter_with_empty_uuid(self):
+ self.assertRaises(ValueError, lambda: self.tw.tasks.get(uuid=''))
class TaskTest(TasklibTest):
class TaskTest(TasklibTest):
for deserializer in deserializers:
self.assertTrue(deserializer('') in (None, [], set()))
for deserializer in deserializers:
self.assertTrue(deserializer('') in (None, [], set()))
- def test_normalizers_returning_empty_string_for _none(self):
+ def test_normalizers_handling _none(self):
# Test that any normalizer can handle None as a valid value
t = Task(self.tw)
# Test that any normalizer can handle None as a valid value
t = Task(self.tw)
+
+ # These normalizers are not supposed to handle None
+ exempt_normalizers = ('normalize_uuid', )
+
normalizers = [getattr(t, normalizer_name) for normalizer_name in
normalizers = [getattr(t, normalizer_name) for normalizer_name in
- filter(lambda x: x.startswith('normalize_'), dir(t))]
+ filter(lambda x: x.startswith('normalize_'), dir(t))
+ if normalizer_name not in exempt_normalizers]
+
for normalizer in normalizers:
normalizer(None)
for normalizer in normalizers:
normalizer(None)
+ def test_recurrent_task_generation(self):
+ today = datetime.date.today()
+ t = Task(self.tw, description="brush teeth",
+ due=today, recur="daily")
+ t.save()
+ self.assertEqual(len(self.tw.tasks.pending()), 2)
class TaskFromHookTest(TasklibTest):
class TaskFromHookTest(TasklibTest):