diff options
Diffstat (limited to 'Lib/test/test_format.py')
-rw-r--r-- | Lib/test/test_format.py | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/Lib/test/test_format.py b/Lib/test/test_format.py index c2c7244..4778a8b 100644 --- a/Lib/test/test_format.py +++ b/Lib/test/test_format.py @@ -174,3 +174,28 @@ testboth("%o", 042, "42") # testboth("%o", -042, "37777777736") # Alas, that's specific to 32-bit machines testboth("%o", 042L, "42") testboth("%o", -042L, "-42") + +# Test exception for unknown format characters +if verbose: + print 'Testing exceptions' + +def test_exc(formatstr, args, exception, excmsg): + try: + testformat(formatstr, args) + except exception, exc: + if str(exc) == excmsg: + if verbose: + print "yes" + else: + if verbose: print 'no' + print 'Unexpected ', exception, ':', repr(str(exc)) + except: + if verbose: print 'no' + print 'Unexpected exception' + raise + +test_exc('abc %a', 1, ValueError, + "unsupported format character 'a' (0x61) at index 5") +test_exc(u'abc %\u3000', 1, ValueError, + "unsupported format character '\000' (0x3000) at index 5") + |