Commit 35e48d24 authored by Raymond Hettinger's avatar Raymond Hettinger

SF 643115: Set._update() had a special case for dictionaries which allowed

non-true values to leak in.  This threw-off equality testing which depends
on the underlying dictionaries having both the same keys and values.
parent 919000e9
......@@ -315,9 +315,6 @@ class BaseSet(object):
if isinstance(iterable, BaseSet):
data.update(iterable._data)
return
if isinstance(iterable, dict):
data.update(iterable)
return
value = True
......
......@@ -179,6 +179,9 @@ class TestBinaryOps(unittest.TestCase):
def setUp(self):
self.set = Set((2, 4, 6))
def test_eq(self): # SF bug 643115
self.assertEqual(self.set, Set({2:1,4:3,6:5}))
def test_union_subset(self):
result = self.set | Set([2])
self.assertEqual(result, Set((2, 4, 6)))
......
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