summaryrefslogtreecommitdiffstats
path: root/Lib/test
diff options
context:
space:
mode:
authorEzio Melotti <ezio.melotti@gmail.com>2013-08-08 17:09:19 (GMT)
committerEzio Melotti <ezio.melotti@gmail.com>2013-08-08 17:09:19 (GMT)
commit7921b30be6d3adaf6a2c0ef1f040a62333b379fb (patch)
treebf61cace09cc7b81f03bfd57315a89ef2d175d0b /Lib/test
parente822b034e766e03cd8fbe7ab52fbc2d46fff6d33 (diff)
downloadcpython-7921b30be6d3adaf6a2c0ef1f040a62333b379fb.zip
cpython-7921b30be6d3adaf6a2c0ef1f040a62333b379fb.tar.gz
cpython-7921b30be6d3adaf6a2c0ef1f040a62333b379fb.tar.bz2
#18357: add tests for dictview set difference. Patch by Fraser Tweedale.
Diffstat (limited to 'Lib/test')
-rw-r--r--Lib/test/test_dictviews.py15
1 files changed, 15 insertions, 0 deletions
diff --git a/Lib/test/test_dictviews.py b/Lib/test/test_dictviews.py
index b264ff2..30cfb93 100644
--- a/Lib/test/test_dictviews.py
+++ b/Lib/test/test_dictviews.py
@@ -112,6 +112,13 @@ class DictSetTest(unittest.TestCase):
self.assertEqual(d1.viewkeys() ^ set(d3.viewkeys()),
{'a', 'b', 'd', 'e'})
+ self.assertEqual(d1.viewkeys() - d1.viewkeys(), set())
+ self.assertEqual(d1.viewkeys() - d2.viewkeys(), {'a'})
+ self.assertEqual(d1.viewkeys() - d3.viewkeys(), {'a', 'b'})
+ self.assertEqual(d1.viewkeys() - set(d1.viewkeys()), set())
+ self.assertEqual(d1.viewkeys() - set(d2.viewkeys()), {'a'})
+ self.assertEqual(d1.viewkeys() - set(d3.viewkeys()), {'a', 'b'})
+
def test_items_set_operations(self):
d1 = {'a': 1, 'b': 2}
d2 = {'a': 2, 'b': 2}
@@ -144,6 +151,14 @@ class DictSetTest(unittest.TestCase):
self.assertEqual(d1.viewitems() ^ d3.viewitems(),
{('a', 1), ('b', 2), ('d', 4), ('e', 5)})
+ self.assertEqual(d1.viewitems() - d1.viewitems(), set())
+ self.assertEqual(d1.viewitems() - d2.viewitems(), {('a', 1)})
+ self.assertEqual(d1.viewitems() - d3.viewitems(), {('a', 1), ('b', 2)})
+ self.assertEqual(d1.viewitems() - set(d1.viewitems()), set())
+ self.assertEqual(d1.viewitems() - set(d2.viewitems()), {('a', 1)})
+ self.assertEqual(d1.viewitems() - set(d3.viewitems()),
+ {('a', 1), ('b', 2)})
+
def test_recursive_repr(self):
d = {}
d[42] = d.viewvalues()