tests/basics/string_format_modulo: Add more tests for dict formatting.

This commit is contained in:
Damien George 2017-02-03 12:17:43 +11:00
parent 7317e34383
commit 84fb292cd5

View File

@ -66,6 +66,11 @@ print(">%-08.4d<" % -12)
print(">%-+08.4d<" % -12)
print(">%-+08.4d<" % 12)
# Should be able to print dicts; in this case they aren't used
# to lookup keywords in formats like %(foo)s
print('%s' % {})
print('%s' % ({},))
# Cases when "*" used and there's not enough values total
try:
print("%*s" % 5)
@ -77,6 +82,7 @@ except TypeError:
print("TypeError")
print("%(foo)s" % {"foo": "bar", "baz": False})
print("%s %(foo)s %(foo)s" % {"foo": 1})
try:
print("%(foo)s" % {})
except KeyError:
@ -87,6 +93,16 @@ try:
except TypeError:
print("TypeError")
# When using %(foo)s format the single argument must be a dict
try:
'%(foo)s' % 1
except TypeError:
print('TypeError')
try:
'%(foo)s' % ({},)
except TypeError:
print('TypeError')
try:
'%(a' % {'a':1}
except ValueError: