summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNed Batchelder <ned@nedbatchelder.com>2009-11-21 08:38:26 -0500
committerNed Batchelder <ned@nedbatchelder.com>2009-11-21 08:38:26 -0500
commitc4c228fd7c7056ca4dc69391e16cc1832f9738a8 (patch)
treef2a6d8528cf9f277f5f275a3cab6ad535baaee99
parent002c59c122f5a72868c9a3835f692968eb689b0a (diff)
downloadpython-coveragepy-git-c4c228fd7c7056ca4dc69391e16cc1832f9738a8.tar.gz
Increase templite test coverage, and use the new branch awesomeness when coverage testing ourselves.
-rw-r--r--coverage/templite.py4
-rw-r--r--test/coverage_coverage.py3
-rw-r--r--test/test_templite.py7
3 files changed, 10 insertions, 4 deletions
diff --git a/coverage/templite.py b/coverage/templite.py
index 22c93a9e..64dc1232 100644
--- a/coverage/templite.py
+++ b/coverage/templite.py
@@ -80,7 +80,7 @@ class Templite(object):
ops = ops_stack.pop()
assert ops[-1][0] == words[0][3:]
else:
- raise Exception("Don't understand tag %r" % words)
+ raise SyntaxError("Don't understand tag %r" % words)
else:
ops.append(('lit', tok))
@@ -138,7 +138,7 @@ class _TempliteEngine(object):
self.context[var] = val
self.execute(body)
else:
- raise Exception("TempliteEngine doesn't grok op %r" % op)
+ raise AssertionError("TempliteEngine doesn't grok op %r" % op)
def evaluate(self, expr):
"""Evaluate an expression.
diff --git a/test/coverage_coverage.py b/test/coverage_coverage.py
index 1a5cc9c4..e1e7674f 100644
--- a/test/coverage_coverage.py
+++ b/test/coverage_coverage.py
@@ -8,7 +8,7 @@ HTML_DIR = "htmlcov"
if os.path.exists(HTML_DIR):
shutil.rmtree(HTML_DIR)
-cov = coverage.coverage()
+cov = coverage.coverage(branch=True)
# Cheap trick: the coverage code itself is excluded from measurement, but if
# we clobber the cover_prefix in the coverage object, we can defeat the
# self-detection.
@@ -40,5 +40,6 @@ cov.clear_exclude()
cov.exclude("#pragma: no cover")
cov.exclude("def __repr__")
cov.exclude("if __name__ == .__main__.:")
+cov.exclude("raise AssertionError")
cov.html_report(directory=HTML_DIR, ignore_errors=True)
diff --git a/test/test_templite.py b/test/test_templite.py
index 6b445aa2..f2c20f94 100644
--- a/test/test_templite.py
+++ b/test/test_templite.py
@@ -191,13 +191,18 @@ class TempliteTest(unittest.TestCase):
"@a0b0c0a1b1c1a2b2c2!"
)
- def test_exception(self):
+ def test_exception_during_evaluation(self):
# TypeError: Couldn't evaluate {{ foo.bar.baz }}:
# 'NoneType' object is unsubscriptable
self.assertRaises(TypeError, self.try_render,
"Hey {{foo.bar.baz}} there", {'foo': None}, "Hey XXX there"
)
+ def test_bogus_tag_syntax(self):
+ self.assertRaises(SyntaxError, self.try_render,
+ "Huh: {% bogus %}!!{% endbogus %}??", {}, ""
+ )
+
if __name__ == '__main__':
unittest.main()