summaryrefslogtreecommitdiff
path: root/test/test_templite.py
diff options
context:
space:
mode:
authorNed Batchelder <ned@nedbatchelder.com>2009-04-20 08:07:42 -0400
committerNed Batchelder <ned@nedbatchelder.com>2009-04-20 08:07:42 -0400
commit1ebdcaf3bb15cac1e1554b5b380fd9e6e7359ed8 (patch)
tree00d5bc021b7ddf245c92662944f1b26e4fd36008 /test/test_templite.py
parente86c7a9e2f40ae1b7070d887310eb26d6e68a250 (diff)
downloadpython-coveragepy-git-1ebdcaf3bb15cac1e1554b5b380fd9e6e7359ed8.tar.gz
Muliple loops and multi-line loops didn't work.
Diffstat (limited to 'test/test_templite.py')
-rw-r--r--test/test_templite.py22
1 files changed, 22 insertions, 0 deletions
diff --git a/test/test_templite.py b/test/test_templite.py
index 962aebb1..20f5fe77 100644
--- a/test/test_templite.py
+++ b/test/test_templite.py
@@ -8,6 +8,9 @@ class AnyOldObject:
class TemplateTest(unittest.TestCase):
+ def try_render(self, text, ctx, result):
+ self.assertEqual(Templite(text).render(ctx), result)
+
def test_passthrough(self):
# Strings without variables are passed through unchanged.
self.assertEqual(Templite("Hello").render(), "Hello")
@@ -95,6 +98,25 @@ class TemplateTest(unittest.TestCase):
render(locals()), "Look: 4, 3, 2, 1, done."
)
+ def test_empty_loops(self):
+ self.assertEqual(
+ Templite("Empty: {% for n in nums %}{{n}}, {% endfor %}done.").
+ render({'nums':[]}), "Empty: done."
+ )
+
+ def test_multiline_loops(self):
+ self.assertEqual(
+ Templite("Look: \n{% for n in nums %}\n{{n}}, \n{% endfor %}done.").
+ render({'nums':[1,2,3]}), "Look: \n\n1, \n\n2, \n\n3, \ndone."
+ )
+
+ def test_multiple_loops(self):
+ self.try_render(
+ "{% for n in nums %}{{n}}{% endfor %} and {% for n in nums %}{{n}}{% endfor %}",
+ {'nums': [1,2,3]},
+ "123 and 123"
+ )
+
if __name__ == '__main__':
unittest.main()