Commit 3b63556d authored by Raymond Hettinger's avatar Raymond Hettinger

Beef-up tests for dict literals

parent 85dfcf35
import unittest
from test import test_support
import sys, UserDict, cStringIO
import sys, UserDict, cStringIO, random, string
class DictTest(unittest.TestCase):
......@@ -10,6 +10,15 @@ class DictTest(unittest.TestCase):
self.assertEqual(dict(), {})
self.assert_(dict() is not {})
def test_literal_constructor(self):
# check literal constructor for different sized dicts (to exercise the BUILD_MAP oparg
items = []
for n in range(400):
dictliteral = '{' + ', '.join('%r: %d' % item for item in items) + '}'
self.assertEqual(eval(dictliteral), dict(items))
items.append((''.join([random.choice(string.letters) for j in range(8)]), n))
random.shuffle(items)
def test_bool(self):
self.assert_(not {})
self.assert_({1: 2})
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment