Commit 32f3add2 authored by Fred Drake's avatar Fred Drake

Add a test of interaction between & and extra replacements.

Remove extra noise from the output when there are no errors, and say more
in the exception when there are errors.
parent 407fea51
...@@ -19,17 +19,17 @@ import os ...@@ -19,17 +19,17 @@ import os
# ===== Utilities # ===== Utilities
tests = 0 tests = 0
fails = 0 failures = []
def confirm(outcome, name): def confirm(outcome, name):
global tests, fails global tests
tests = tests + 1 tests = tests + 1
if outcome: if outcome:
print "Passed", name if verbose:
print "Failed", name
else: else:
print "Failed", name failures.append(name)
fails = fails + 1
def test_make_parser2(): def test_make_parser2():
try: try:
...@@ -82,6 +82,9 @@ def test_unescape_all(): ...@@ -82,6 +82,9 @@ def test_unescape_all():
def test_unescape_extra(): def test_unescape_extra():
return unescape("Hei p deg", {"" : "å"}) == "Hei på deg" return unescape("Hei p deg", {"" : "å"}) == "Hei på deg"
def test_unescape_amp_extra():
return unescape("&foo;", {"&foo;": "splat"}) == "&foo;"
# ===== quoteattr # ===== quoteattr
def test_quoteattr_basic(): def test_quoteattr_basic():
...@@ -650,6 +653,8 @@ for (name, value) in items: ...@@ -650,6 +653,8 @@ for (name, value) in items:
if name[ : 5] == "test_": if name[ : 5] == "test_":
confirm(value(), name) confirm(value(), name)
print "%d tests, %d failures" % (tests, fails) if verbose:
if fails != 0: print "%d tests, %d failures" % (tests, len(failures))
raise TestFailed, "%d of %d tests failed" % (fails, tests) if failures:
raise TestFailed("%d of %d tests failed: %s"
% (len(failures), tests, ", ".join(failures)))
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment