summaryrefslogtreecommitdiff
path: root/tests/basics/string_format.py
diff options
context:
space:
mode:
authorDamien George <damien.p.george@gmail.com>2015-08-21 11:56:14 +0100
committerDamien George <damien.p.george@gmail.com>2015-08-21 12:02:09 +0100
commitd007cb890394d9d26c6fafb133532a5175d91eb2 (patch)
tree4fc76a836e7f9738d146bacac9b02f2e288c144b /tests/basics/string_format.py
parentd292a81e95bd558f3902f88fa4d6d5641a4aa388 (diff)
tests: Add more tests to improve coverage, mostly testing exceptions.
Diffstat (limited to 'tests/basics/string_format.py')
-rw-r--r--tests/basics/string_format.py72
1 files changed, 71 insertions, 1 deletions
diff --git a/tests/basics/string_format.py b/tests/basics/string_format.py
index 5398c6e23..d0518243c 100644
--- a/tests/basics/string_format.py
+++ b/tests/basics/string_format.py
@@ -123,4 +123,74 @@ if full_tests:
for str in ('', 'a', 'bcd', 'This is a test with a longer string'):
test_fmt(conv, fill, alignment, '', '', width, '', 's', str)
-# TODO Add tests for erroneous format strings.
+# tests for errors in format string
+
+try:
+ '{0:0}'.format('zzz')
+except (ValueError):
+ print('ValueError')
+
+try:
+ '{1:}'.format(1)
+except IndexError:
+ print('IndexError')
+
+try:
+ '}'.format('zzzz')
+except ValueError:
+ print('ValueError')
+
+try:
+ 'abc{!d}'.format('1')
+except ValueError:
+ print('ValueError')
+
+try:
+ '{abc'.format('zzzz')
+except ValueError:
+ print('ValueError')
+
+try:
+ '{!s :}'.format(2)
+except ValueError:
+ print('ValueError')
+
+try:
+ '{}{0}'.format(1, 2)
+except ValueError:
+ print('ValueError')
+
+try:
+ '{1:}'.format(1)
+except IndexError:
+ print('IndexError')
+
+try:
+ '{ 0 :*^10}'.format(12)
+except KeyError:
+ print('KeyError')
+
+try:
+ '{0}{}'.format(1)
+except ValueError:
+ print('ValueError')
+
+try:
+ '{}{}'.format(1)
+except IndexError:
+ print('IndexError')
+
+try:
+ '{0:+s}'.format('1')
+except ValueError:
+ print('ValueError')
+
+try:
+ '{0:+c}'.format(1)
+except ValueError:
+ print('ValueError')
+
+try:
+ '{0:s}'.format(1)
+except ValueError:
+ print('ValueError')