2
from test import support
4
class DictSetTest(unittest.TestCase):
6
def test_constructors_not_callable(self):
8
self.assertRaises(TypeError, kt, {})
9
self.assertRaises(TypeError, kt)
11
self.assertRaises(TypeError, it, {})
12
self.assertRaises(TypeError, it)
13
vt = type({}.values())
14
self.assertRaises(TypeError, vt, {})
15
self.assertRaises(TypeError, vt)
17
def test_dict_keys(self):
18
d = {1: 10, "a": "ABC"}
20
self.assertEqual(len(keys), 2)
21
self.assertEqual(set(keys), {1, "a"})
22
self.assertEqual(keys, {1, "a"})
23
self.assertNotEqual(keys, {1, "a", "b"})
24
self.assertNotEqual(keys, {1, "b"})
25
self.assertNotEqual(keys, {1})
26
self.assertNotEqual(keys, 42)
27
self.assert_(1 in keys)
28
self.assert_("a" in keys)
29
self.assert_(10 not in keys)
30
self.assert_("Z" not in keys)
31
self.assertEqual(d.keys(), d.keys())
32
e = {1: 11, "a": "def"}
33
self.assertEqual(d.keys(), e.keys())
35
self.assertNotEqual(d.keys(), e.keys())
37
def test_dict_items(self):
38
d = {1: 10, "a": "ABC"}
40
self.assertEqual(len(items), 2)
41
self.assertEqual(set(items), {(1, 10), ("a", "ABC")})
42
self.assertEqual(items, {(1, 10), ("a", "ABC")})
43
self.assertNotEqual(items, {(1, 10), ("a", "ABC"), "junk"})
44
self.assertNotEqual(items, {(1, 10), ("a", "def")})
45
self.assertNotEqual(items, {(1, 10)})
46
self.assertNotEqual(items, 42)
47
self.assert_((1, 10) in items)
48
self.assert_(("a", "ABC") in items)
49
self.assert_((1, 11) not in items)
50
self.assert_(1 not in items)
51
self.assert_(() not in items)
52
self.assert_((1,) not in items)
53
self.assert_((1, 2, 3) not in items)
54
self.assertEqual(d.items(), d.items())
56
self.assertEqual(d.items(), e.items())
58
self.assertNotEqual(d.items(), e.items())
60
def test_dict_mixed_keys_items(self):
61
d = {(1, 1): 11, (2, 2): 22}
63
self.assertEqual(d.keys(), e.items())
64
self.assertNotEqual(d.items(), e.keys())
66
def test_dict_values(self):
67
d = {1: 10, "a": "ABC"}
69
self.assertEqual(set(values), {10, "ABC"})
70
self.assertEqual(len(values), 2)
73
support.run_unittest(DictSetTest)
75
if __name__ == "__main__":