taskwiki/tests/test_preset_parsing.py
Bodo Graumann 4372d52298 Add new header type "Preset Header"
As first envisioned in #69, these preset headers allow us to have a
hierarchical structure of taskwarrior filters and defaults.
2018-07-17 21:53:18 -04:00

31 lines
961 B
Python

# -*- coding: utf-8 -*-
from tests.base import MockVim, MockCache
import sys
class TestParsingPresetHeader(object):
def setup(self):
self.mockvim = MockVim()
self.cache = MockCache()
sys.modules['vim'] = self.mockvim
from taskwiki.preset import PresetHeader
self.PresetHeader = PresetHeader
def teardown(self):
self.mockvim.reset()
self.cache.reset()
def test_simple(self):
self.cache.buffer[0] = "== Test || project:Home =="
header = self.PresetHeader.from_line(0, self.cache)
assert header.taskfilter == ["(", "project:Home", ")"]
assert header.defaults == {'project': 'Home'}
def test_defaults(self):
self.cache.buffer[0] = "== Test || project:Home || +home =="
header = self.PresetHeader.from_line(0, self.cache)
assert header.taskfilter == ["(", "project:Home", ")"]
assert header.defaults == {'tags': ['home']}