Skip to content

Commit 7e7abda

Browse files
committed
Add test case
1 parent 596da3c commit 7e7abda

File tree

1 file changed

+25
-0
lines changed

1 file changed

+25
-0
lines changed

Lib/test/_test_multiprocessing.py

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2786,6 +2786,31 @@ def test_dict_proxy_nested(self):
27862786
self.assertIsInstance(outer[0], list) # Not a ListProxy
27872787
self.assertEqual(outer[-1][-1]['feed'], 3)
27882788

2789+
def test_set_isinstance(self):
2790+
m = multiprocessing.Manager()
2791+
self.addCleanup(m.shutdown)
2792+
s = m.set()
2793+
self.assertIsInstance(s, collections.abc.MutableSet)
2794+
self.assertNotIsInstance(s, collections.abc.MutableMapping)
2795+
2796+
mutable_set_methods = (
2797+
'__contains__', '__iter__', '__len__',
2798+
'add', 'discard', 'remove', 'pop', 'clear',
2799+
'update', 'difference_update', 'intersection_update',
2800+
'symmetric_difference_update',
2801+
)
2802+
for name in mutable_set_methods:
2803+
with self.subTest(name=name):
2804+
self.assertTrue(callable(getattr(s, name)))
2805+
2806+
mapping_only_methods = (
2807+
'__getitem__', '__setitem__', 'setdefault',
2808+
'keys', 'items', 'values', 'get',
2809+
)
2810+
for name in mapping_only_methods:
2811+
with self.subTest(name=name):
2812+
self.assertFalse(hasattr(s, name))
2813+
27892814
def test_nested_queue(self):
27902815
a = self.list() # Test queue inside list
27912816
a.append(self.Queue())

0 commit comments

Comments
 (0)