mirror of
https://github.com/tbabej/taskwiki.git
synced 2025-08-18 21:33:07 +02:00
tests: Refactor module mocks for parsing tests
This commit is contained in:
parent
00711bbb63
commit
1b5a19924e
3 changed files with 50 additions and 32 deletions
|
@ -3,22 +3,23 @@ from datetime import datetime
|
|||
from base import MockVim, MockCache
|
||||
import sys
|
||||
|
||||
mockvim = MockVim()
|
||||
sys.modules['vim'] = mockvim
|
||||
|
||||
from taskwiki.vwtask import VimwikiTask
|
||||
from tasklib import local_zone
|
||||
|
||||
cache = MockCache()
|
||||
|
||||
class TestParsingVimwikiTask(object):
|
||||
def setup(self):
|
||||
self.mockvim = MockVim()
|
||||
self.cache = MockCache()
|
||||
sys.modules['vim'] = self.mockvim
|
||||
from taskwiki.vwtask import VimwikiTask
|
||||
self.VimwikiTask = VimwikiTask
|
||||
|
||||
def teardown(self):
|
||||
self.mockvim.reset()
|
||||
self.cache.reset()
|
||||
|
||||
def test_simple(self):
|
||||
self.mockvim.current.buffer[0] = "* [ ] This is task description"
|
||||
vwtask = VimwikiTask.from_line(cache, 0)
|
||||
vwtask = self.VimwikiTask.from_line(self.cache, 0)
|
||||
|
||||
assert vwtask['description'] == "This is task description"
|
||||
assert vwtask['uuid'] == None
|
||||
|
@ -28,7 +29,7 @@ class TestParsingVimwikiTask(object):
|
|||
|
||||
def test_simple_with_unicode(self):
|
||||
self.mockvim.current.buffer[0] = "* [ ] This is täsk description"
|
||||
vwtask = VimwikiTask.from_line(cache, 0)
|
||||
vwtask = self.VimwikiTask.from_line(self.cache, 0)
|
||||
|
||||
assert vwtask['description'] == u"This is täsk description"
|
||||
assert vwtask['uuid'] == None
|
||||
|
@ -38,7 +39,7 @@ class TestParsingVimwikiTask(object):
|
|||
|
||||
def test_due_full(self):
|
||||
self.mockvim.current.buffer[0] = "* [ ] Random task (2015-08-08 15:15)"
|
||||
vwtask = VimwikiTask.from_line(cache, 0)
|
||||
vwtask = self.VimwikiTask.from_line(self.cache, 0)
|
||||
|
||||
assert vwtask['description'] == u"Random task"
|
||||
assert vwtask['due'] == local_zone.localize(datetime(2015,8,8,15,15))
|
||||
|
@ -48,7 +49,7 @@ class TestParsingVimwikiTask(object):
|
|||
|
||||
def test_due_short(self):
|
||||
self.mockvim.current.buffer[0] = "* [ ] Random task (2015-08-08)"
|
||||
vwtask = VimwikiTask.from_line(cache, 0)
|
||||
vwtask = self.VimwikiTask.from_line(self.cache, 0)
|
||||
|
||||
assert vwtask['description'] == u"Random task"
|
||||
assert vwtask['due'] == local_zone.localize(datetime(2015,8,8,0,0))
|
||||
|
@ -58,7 +59,7 @@ class TestParsingVimwikiTask(object):
|
|||
|
||||
def test_priority_low(self):
|
||||
self.mockvim.current.buffer[0] = "* [ ] Semi-Important task !"
|
||||
vwtask = VimwikiTask.from_line(cache, 0)
|
||||
vwtask = self.VimwikiTask.from_line(self.cache, 0)
|
||||
|
||||
assert vwtask['description'] == u"Semi-Important task"
|
||||
assert vwtask['priority'] == 'L'
|
||||
|
@ -66,7 +67,7 @@ class TestParsingVimwikiTask(object):
|
|||
|
||||
def test_priority_medium(self):
|
||||
self.mockvim.current.buffer[0] = "* [ ] Important task !!"
|
||||
vwtask = VimwikiTask.from_line(cache, 0)
|
||||
vwtask = self.VimwikiTask.from_line(self.cache, 0)
|
||||
|
||||
assert vwtask['description'] == u"Important task"
|
||||
assert vwtask['priority'] == 'M'
|
||||
|
@ -74,7 +75,7 @@ class TestParsingVimwikiTask(object):
|
|||
|
||||
def test_priority_high(self):
|
||||
self.mockvim.current.buffer[0] = "* [ ] Very important task !!!"
|
||||
vwtask = VimwikiTask.from_line(cache, 0)
|
||||
vwtask = self.VimwikiTask.from_line(self.cache, 0)
|
||||
|
||||
assert vwtask['description'] == u"Very important task"
|
||||
assert vwtask['priority'] == 'H'
|
||||
|
@ -83,7 +84,7 @@ class TestParsingVimwikiTask(object):
|
|||
|
||||
def test_priority_and_due(self):
|
||||
self.mockvim.current.buffer[0] = "* [ ] Due today !!! (2015-08-08)"
|
||||
vwtask = VimwikiTask.from_line(cache, 0)
|
||||
vwtask = self.VimwikiTask.from_line(self.cache, 0)
|
||||
|
||||
assert vwtask['description'] == u"Due today"
|
||||
assert vwtask['priority'] == 'H'
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue