.. versionchanged:: 4.3
Added ``filename`` and ``lineno`` attributes.
"""
- def __init__(self, message, filename, lineno):
+ def __init__(self, message, filename=None, lineno=0):
self.message = message
# The names "filename" and "lineno" are chosen for consistency
# with python SyntaxError.
self.assertEqual("foo.html", cm.exception.filename)
self.assertEqual(3, cm.exception.lineno)
+ def test_custom_parse_error(self):
+ # Make sure that ParseErrors remain compatible with their
+ # pre-4.3 signature.
+ self.assertEqual("asdf at None:0", str(ParseError("asdf")))
+
class AutoEscapeTest(unittest.TestCase):
def setUp(self):