classes: tests and solutions
everything is an object: tests
The code in classes/tests/test_classes.py from everything is an object
1class WPass: pass
2
3
4class WParentheses(): pass
5
6
7class WObject(object): pass
8
9
10def test_making_a_class_w_pass():
11 assert isinstance(WPass(), object)
12 assert issubclass(WPass, object)
13
14
15def test_making_a_class_w_parentheses():
16 assert isinstance(WParentheses(), object)
17 assert issubclass(WParentheses, object)
18
19
20def test_making_a_class_w_object():
21 assert isinstance(WObject(), object)
22 assert issubclass(WObject, object)
23
24
25def test_is_none_an_object():
26 assert isinstance(None, object)
27 # fails because None is not a class
28 # assert issubclass(None, object)
29
30
31def test_is_a_boolean_an_object():
32 assert isinstance(bool, object)
33 assert issubclass(bool, object)
34
35
36def test_is_an_integer_an_object():
37 assert isinstance(int, object)
38 assert issubclass(int, object)
39
40
41def test_is_a_float_an_object():
42 assert isinstance(float, object)
43 assert issubclass(float, object)
44
45
46def test_is_a_string_an_object():
47 assert isinstance(str, object)
48 assert issubclass(str, object)
49
50
51def test_is_a_tuple_an_object():
52 assert isinstance(tuple, object)
53 assert issubclass(tuple, object)
54
55
56def test_is_a_list_an_object():
57 assert isinstance(list, object)
58 assert issubclass(list, object)
59
60
61def test_is_a_set_an_object():
62 assert isinstance(set, object)
63 assert issubclass(set, object)
64
65
66def test_is_a_dictionary_an_object():
67 assert isinstance(dict, object)
68 assert issubclass(dict, object)
69
70
71def test_dir_object():
72 reality = dir(object)
73 my_expectation = [
74 '__class__', '__delattr__', '__dir__',
75 '__doc__', '__eq__', '__format__', '__ge__',
76 '__getattribute__', '__getstate__', '__gt__',
77 '__hash__', '__init__', '__init_subclass__',
78 '__le__', '__lt__', '__ne__', '__new__',
79 '__reduce__', '__reduce_ex__', '__repr__',
80 '__setattr__', '__sizeof__', '__str__',
81 '__subclasshook__'
82 ]
83 assert reality == my_expectation
84
85
86# Exceptions seen
87# AssertionError
88# NameError
89# TypeError
test objects with unittest: tests
The code in classes/tests/test_classes.py from test objects with unittest
1import unittest
2
3
4class WPass: pass
5
6
7class WParentheses(): pass
8
9
10class WObject(object): pass
11
12
13class TestClasses(unittest.TestCase):
14
15 def test_making_a_class_w_pass(self):
16 assert isinstance(WPass(), object)
17 self.assertIsInstance(WPass(), object)
18
19 assert issubclass(WPass, object)
20 self.assertIsSubclass(WPass, object)
21
22 def test_making_a_class_w_parentheses(self):
23 assert isinstance(WParentheses(), object)
24 self.assertIsInstance(WParentheses(), object)
25
26 assert issubclass(WParentheses, object)
27 self.assertIsSubclass(WParentheses, object)
28
29 def test_making_a_class_w_object(self):
30 assert isinstance(WObject(), object)
31 self.assertIsInstance(WObject(), object)
32
33 assert issubclass(WObject, object)
34 self.assertIsSubclass(WObject, object)
35
36 def test_is_none_an_object(self):
37 assert isinstance(None, object)
38 self.assertIsInstance(None, object)
39
40 # fails because None is not a class
41 # assert issubclass(None, object)
42 # self.assertIsSubclass(None, object)
43
44 def test_is_a_boolean_an_object(self):
45 assert isinstance(bool, object)
46 self.assertIsInstance(bool, object)
47
48 assert issubclass(bool, object)
49 self.assertIsSubclass(bool, object)
50
51 def test_is_an_integer_an_object(self):
52 assert isinstance(int, object)
53 self.assertIsInstance(int, object)
54
55 assert issubclass(int, object)
56 self.assertIsSubclass(int, object)
57
58 def test_is_a_float_an_object(self):
59 assert isinstance(float, object)
60 self.assertIsInstance(float, object)
61
62 assert issubclass(float, object)
63 self.assertIsSubclass(float, object)
64
65 def test_is_a_string_an_object(self):
66 assert isinstance(str, object)
67 self.assertIsInstance(str, object)
68
69 assert issubclass(str, object)
70 self.assertIsSubclass(str, object)
71
72 def test_is_a_tuple_an_object(self):
73 assert isinstance(tuple, object)
74 self.assertIsInstance(tuple, object)
75
76 assert issubclass(tuple, object)
77 self.assertIsSubclass(tuple, object)
78
79 def test_is_a_list_an_object(self):
80 assert isinstance(list, object)
81 self.assertIsInstance(list, object)
82
83 assert issubclass(list, object)
84 self.assertIsSubclass(list, object)
85
86 def test_is_a_set_an_object(self):
87 assert isinstance(set, object)
88 self.assertIsInstance(set, object)
89
90 assert issubclass(set, object)
91 self.assertIsSubclass(set, object)
92
93 def test_is_a_dictionary_an_object(self):
94 assert isinstance(dict, object)
95 self.assertIsInstance(dict, object)
96
97 assert issubclass(dict, object)
98 self.assertIsSubclass(dict, object)
99
100 def test_dir_object(self):
101 reality = dir(object)
102 my_expectation = [
103 '__class__', '__delattr__', '__dir__',
104 '__doc__', '__eq__', '__format__', '__ge__',
105 '__getattribute__', '__getstate__', '__gt__',
106 '__hash__', '__init__', '__init_subclass__',
107 '__le__', '__lt__', '__ne__', '__new__',
108 '__reduce__', '__reduce_ex__', '__repr__',
109 '__setattr__', '__sizeof__', '__str__',
110 '__subclasshook__'
111 ]
112 assert reality == my_expectation
113 self.assertEqual(reality, my_expectation)
114
115
116# Exceptions seen
117# AssertionError
118# NameError
119# TypeError
120# AttributeError