Skip to content

Commit 9c299be

Browse files
committed
🔬 test manifest.in.jj2 and setup.py.jj2. fix #70
1 parent 918cc55 commit 9c299be

File tree

4 files changed

+36
-7
lines changed

4 files changed

+36
-7
lines changed

tests/test_maniftest.py

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
import textwrap
2+
3+
from test_utils import get_rendered_file
4+
5+
6+
def test_manifest():
7+
filename = 'MANIFEST.in.jj2'
8+
rendered = get_rendered_file(filename, {})
9+
expected_manifest = textwrap.dedent("""\
10+
include README.rst
11+
include LICENSE
12+
include CHANGELOG.rst
13+
recursive-include tests *
14+
""")
15+
assert expected_manifest == rendered

tests/test_requirements.py

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
11
import textwrap
22

3-
import jinja2
4-
53
from test_utils import get_rendered_file
64

75

tests/test_setup.py

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
from test_utils import get_rendered_file, get_file_content
2+
3+
4+
def test_setup():
5+
filename = 'setup.py.jj2'
6+
context = dict(
7+
description="test"
8+
)
9+
rendered = get_rendered_file(filename, context)
10+
expected_requirements = get_file_content('setup.py.output')
11+
assert expected_requirements == rendered

tests/test_utils.py

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,16 @@
1-
import jinja2
1+
import os
2+
from moban.jinja2.engine import Engine
23

34
PATH_TO_TEMPLATES = './templates'
45

56

67
def get_rendered_file(filename, context):
7-
rendered = jinja2.Environment(
8-
loader=jinja2.FileSystemLoader(PATH_TO_TEMPLATES),
9-
trim_blocks=True, lstrip_blocks=True
10-
).get_template(filename).render(context)
8+
engine = Engine([PATH_TO_TEMPLATES])
9+
template = engine.get_template(filename)
10+
rendered = engine.apply_template(template, context, '')
1111
return rendered
12+
13+
14+
def get_file_content(filename):
15+
with open(os.path.join("tests", "fixtures", filename))as f:
16+
return f.read()

0 commit comments

Comments
 (0)