Add test and fix for fromkeys() optional argument.

This commit is contained in:
Raymond Hettinger 2007-03-21 20:33:57 +00:00
parent 7492e4260e
commit e3146f5aa3
2 changed files with 5 additions and 2 deletions

View File

@ -293,6 +293,9 @@ class TestJointOps(unittest.TestCase):
self.assertEqual(sum(elem.hash_count for elem in d), n) self.assertEqual(sum(elem.hash_count for elem in d), n)
d3 = dict.fromkeys(frozenset(d)) d3 = dict.fromkeys(frozenset(d))
self.assertEqual(sum(elem.hash_count for elem in d), n) self.assertEqual(sum(elem.hash_count for elem in d), n)
d3 = dict.fromkeys(frozenset(d), 123)
self.assertEqual(sum(elem.hash_count for elem in d), n)
self.assertEqual(d3, dict.fromkeys(d, 123))
class TestSet(TestJointOps): class TestSet(TestJointOps):
thetype = set thetype = set

View File

@ -1186,8 +1186,8 @@ dict_fromkeys(PyObject *cls, PyObject *args)
while (_PySet_NextEntry(seq, &pos, &key, &hash)) { while (_PySet_NextEntry(seq, &pos, &key, &hash)) {
Py_INCREF(key); Py_INCREF(key);
Py_INCREF(Py_None); Py_INCREF(value);
if (insertdict(mp, key, hash, Py_None)) if (insertdict(mp, key, hash, value))
return NULL; return NULL;
} }
return d; return d;