mirror of
https://github.com/tbabej/taskwiki.git
synced 2025-08-18 21:33:07 +02:00
tests: Enhance the modstring parser test suite
This commit is contained in:
parent
71c3709744
commit
050b5cf99a
1 changed files with 37 additions and 15 deletions
|
@ -10,20 +10,42 @@ sys.modules['vim'] = MockVim()
|
|||
|
||||
from taskwiki import util
|
||||
|
||||
def test_modstring_to_args():
|
||||
assert util.tw_modstring_to_args("") == []
|
||||
assert util.tw_modstring_to_args("project:Random") == ["project:Random"]
|
||||
assert util.tw_modstring_to_args("project:Random area:admin") == ["project:Random", "area:admin"]
|
||||
assert util.tw_modstring_to_args("project:Random +test") == ["project:Random", "+test"]
|
||||
assert util.tw_modstring_to_args("project:Random +test") == ["project:Random", "+test"]
|
||||
assert util.tw_modstring_to_args("project:Random due:now") == ["project:Random", "due:now"]
|
||||
assert util.tw_modstring_to_args("project:'Random +test'") == ["project:Random +test"]
|
||||
class TestParsingModstrings(object):
|
||||
def test_modstring_to_args(self):
|
||||
assert util.tw_modstring_to_args("") == []
|
||||
assert util.tw_modstring_to_args("project:Random") == ["project:Random"]
|
||||
assert util.tw_modstring_to_args("project:Random area:admin") == ["project:Random", "area:admin"]
|
||||
assert util.tw_modstring_to_args("project:Random +test") == ["project:Random", "+test"]
|
||||
assert util.tw_modstring_to_args("project:'Random +test'") == ["project:Random +test"]
|
||||
|
||||
def test_modstring_to_kwargs():
|
||||
assert util.tw_modstring_to_kwargs("") == {}
|
||||
assert util.tw_modstring_to_kwargs("project:Random") == {"project":"Random"}
|
||||
assert util.tw_modstring_to_kwargs("project:Random area:admin") == {"project":"Random", "area":"admin"}
|
||||
assert util.tw_modstring_to_kwargs("project:Random +test") == {"project":"Random", "tags":["test"]}
|
||||
assert util.tw_modstring_to_kwargs("project:Random +test +home") == {"project":"Random", "tags":["test", "home"]}
|
||||
assert util.tw_modstring_to_kwargs("project:'Random +test'") == {"project":"Random +test"}
|
||||
def test_modstring_to_args_with_spaces(self):
|
||||
assert util.tw_modstring_to_args("project:Random +test") == ["project:Random", "+test"]
|
||||
assert util.tw_modstring_to_args("project:Random due:now") == ["project:Random", "due:now"]
|
||||
|
||||
def test_modstring_to_args_overriding(self):
|
||||
assert util.tw_modstring_to_args("project:Random project:Home") == ["project:Random", "project:Home"]
|
||||
assert util.tw_modstring_to_args("project:Random due:now due:today") == ["project:Random", "due:now", "due:today"]
|
||||
|
||||
def test_modstring_to_kwargs(self):
|
||||
assert util.tw_modstring_to_kwargs("") == {}
|
||||
assert util.tw_modstring_to_kwargs("project:Random") == {"project":"Random"}
|
||||
assert util.tw_modstring_to_kwargs("project:Random area:admin") == {"project":"Random", "area":"admin"}
|
||||
assert util.tw_modstring_to_kwargs("project:Random +test") == {"project":"Random", "tags":["test"]}
|
||||
assert util.tw_modstring_to_kwargs("project:Random +test +home") == {"project":"Random", "tags":["test", "home"]}
|
||||
assert util.tw_modstring_to_kwargs("project:'Random +test'") == {"project":"Random +test"}
|
||||
|
||||
def test_modstring_to_kwargs_with_spaces(self):
|
||||
assert util.tw_modstring_to_kwargs("project:Random area:admin") == {"project":"Random", "area":"admin"}
|
||||
assert util.tw_modstring_to_kwargs("project:Random +test") == {"project":"Random", "tags":["test"]}
|
||||
|
||||
def test_modstring_to_kwargs_overriding(self):
|
||||
assert util.tw_modstring_to_kwargs("project:Random project:Home") == {"project":"Home"}
|
||||
assert util.tw_modstring_to_kwargs("project:Random area:admin area:school") == {"project":"Random", "area":"school"}
|
||||
|
||||
def test_modstring_to_kwargs_ignore_modifiers(self):
|
||||
assert util.tw_modstring_to_kwargs("project.is:Random due:now") == {"due":"now"}
|
||||
assert util.tw_modstring_to_kwargs("project:Random due.before:now area:admin") == {"project":"Random", "area":"admin"}
|
||||
|
||||
def test_modstring_to_kwargs_ignore_virtual_tags(self):
|
||||
assert util.tw_modstring_to_kwargs("project:Random +PENDING") == {"project":"Random"}
|
||||
assert util.tw_modstring_to_kwargs("project:Random -DELETED area:admin") == {"project":"Random", "area":"admin"}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue