From 7921b30be6d3adaf6a2c0ef1f040a62333b379fb Mon Sep 17 00:00:00 2001 From: Ezio Melotti Date: Thu, 8 Aug 2013 20:09:19 +0300 Subject: #18357: add tests for dictview set difference. Patch by Fraser Tweedale. --- Lib/test/test_dictviews.py | 15 +++++++++++++++ Misc/ACKS | 1 + Misc/NEWS | 3 +++ 3 files changed, 19 insertions(+) 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() diff --git a/Misc/ACKS b/Misc/ACKS index 822a523..736887d 100644 --- a/Misc/ACKS +++ b/Misc/ACKS @@ -1042,6 +1042,7 @@ David Turner Stephen Turner Theodore Turocy Bill Tutt +Fraser Tweedale Doobee R. Tzeck Eren Türkay Lionel Ulmer diff --git a/Misc/NEWS b/Misc/NEWS index af3a94b..e5432b6 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -142,6 +142,9 @@ IDLE Tests ----- +- Issue #18357: add tests for dictview set difference. + Patch by Fraser Tweedale. + - Issue #11185: Fix test_wait4 under AIX. Patch by Sébastien Sablé. - Issue #18094: test_uuid no more reports skipped tests as passed. -- cgit v0.12