summaryrefslogtreecommitdiff
path: root/Lib/test/test_dict.py
diff options
context:
space:
mode:
authorBenjamin Peterson <benjamin@python.org>2010-11-17 22:33:12 +0000
committerBenjamin Peterson <benjamin@python.org>2010-11-17 22:33:12 +0000
commitc6988922ca2c06a951ebe4ea907421105ee96806 (patch)
tree073fc4269c7afa83254d058f6df7ef17b2e0e5db /Lib/test/test_dict.py
parent2da428da2ca748cd767d1beec94198290b2866fa (diff)
downloadcpython-c6988922ca2c06a951ebe4ea907421105ee96806.tar.gz
handle dict subclasses gracefully in PyArg_ValidateKeywordArguments
Diffstat (limited to 'Lib/test/test_dict.py')
-rw-r--r--Lib/test/test_dict.py11
1 files changed, 7 insertions, 4 deletions
diff --git a/Lib/test/test_dict.py b/Lib/test/test_dict.py
index 818c99ed3b..1507e42053 100644
--- a/Lib/test/test_dict.py
+++ b/Lib/test/test_dict.py
@@ -8,10 +8,13 @@ import gc, weakref
class DictTest(unittest.TestCase):
def test_invalid_keyword_arguments(self):
- with self.assertRaises(TypeError):
- dict(**{1 : 2})
- with self.assertRaises(TypeError):
- {}.update(**{1 : 2})
+ class Custom(dict):
+ pass
+ for invalid in {1 : 2}, Custom({1 : 2}):
+ with self.assertRaises(TypeError):
+ dict(**invalid)
+ with self.assertRaises(TypeError):
+ {}.update(**invalid)
def test_constructor(self):
# calling built-in types without argument must return empty