32 lines
808 B
Python
32 lines
808 B
Python
|
from pathlib import Path
|
||
|
|
||
|
from symconf import Template, TOMLTemplate
|
||
|
|
||
|
def test_template_fill():
|
||
|
# test simple replacment
|
||
|
assert Template('f{{a}} - f{{b}}').fill({
|
||
|
'a': 1,
|
||
|
'b': 2,
|
||
|
}) == '1 - 2'
|
||
|
|
||
|
# test nested brackets (using default pattern)
|
||
|
assert Template('{{ f{{a}} - f{{b}} }}').fill({
|
||
|
'a': 1,
|
||
|
'b': 2,
|
||
|
}) == '{{ 1 - 2 }}'
|
||
|
|
||
|
# test tight nested brackets (requires greedy quantifier)
|
||
|
assert Template('{{f{{a}} - f{{b}}}}').fill({
|
||
|
'a': 1,
|
||
|
'b': 2,
|
||
|
}) == '{{1 - 2}}'
|
||
|
|
||
|
def test_toml_template_fill():
|
||
|
test_group_dir = Path(
|
||
|
__file__, '..', 'test-config-dir/groups/test/'
|
||
|
).resolve()
|
||
|
|
||
|
stacked_dict = TOMLTemplate.stack_toml(test_group_dir.iterdir())
|
||
|
|
||
|
assert stacked_dict == {'base':'aaa','concrete':'zzz'}
|