Issues #10017 and #14998: Fix TypeError using pprint on dictionaries with unorderable key.

This commit is contained in:
Florent Xicluna 2012-07-21 11:22:33 +02:00
commit 6a01fc5d41
3 changed files with 18 additions and 2 deletions

View file

@ -466,6 +466,15 @@ class QueryTestCase(unittest.TestCase):
self.assertEqual(clean(pprint.pformat(dict.fromkeys(keys))),
'{' + ','.join('%r:None' % k for k in skeys) + '}')
# Issue 10017: TypeError on user-defined types as dict keys.
self.assertEqual(pprint.pformat({Unorderable: 0, 1: 0}),
'{1: 0, ' + repr(Unorderable) +': 0}')
# Issue 14998: TypeError on tuples with NoneTypes as dict keys.
self.assertEqual(pprint.pformat({(1,): 0, (None,): 0}),
'{(1,): 0, (None,): 0}')
class DottedPrettyPrinter(pprint.PrettyPrinter):
def format(self, object, context, maxlevels, level):