Lines Matching refs:self

6     def test_init_subclass(self):
17 self.assertFalse(A.initialized)
18 self.assertTrue(B.initialized)
20 def test_init_subclass_dict(self):
31 self.assertFalse(A.initialized)
32 self.assertTrue(B.initialized)
34 def test_init_subclass_kwargs(self):
42 self.assertEqual(B.kwargs, dict(x=3))
44 def test_init_subclass_error(self):
49 with self.assertRaises(RuntimeError):
53 def test_init_subclass_wrong(self):
58 with self.assertRaises(TypeError):
62 def test_init_subclass_skipped(self):
74 self.assertIs(A.initialized, A)
75 self.assertIs(BaseWithoutInit.initialized, BaseWithoutInit)
77 def test_init_subclass_diamond(self):
99 self.assertEqual(A.calls, ["right", "middle"])
100 self.assertEqual(Left.calls, [])
101 self.assertEqual(Right.calls, [])
103 def test_set_name(self):
105 def __set_name__(self, owner, name):
106 self.owner = owner
107 self.name = name
112 self.assertEqual(A.d.name, "d")
113 self.assertIs(A.d.owner, A)
115 def test_set_name_metaclass(self):
119 self.assertEqual(ret.d.name, "d")
120 self.assertIs(ret.d.owner, ret)
124 def __set_name__(self, owner, name):
125 self.owner = owner
126 self.name = name
130 self.assertEqual(A, 0)
132 def test_set_name_error(self):
134 def __set_name__(self, owner, name):
137 with self.assertRaises(RuntimeError) as cm:
142 self.assertRegex(str(exc), r'\bNotGoingToWork\b')
143 self.assertRegex(str(exc), r'\battr\b')
144 self.assertRegex(str(exc), r'\bDescriptor\b')
145 self.assertIsInstance(exc.__cause__, ZeroDivisionError)
147 def test_set_name_wrong(self):
149 def __set_name__(self):
152 with self.assertRaises(RuntimeError) as cm:
157 self.assertRegex(str(exc), r'\bNotGoingToWork\b')
158 self.assertRegex(str(exc), r'\battr\b')
159 self.assertRegex(str(exc), r'\bDescriptor\b')
160 self.assertIsInstance(exc.__cause__, TypeError)
162 def test_set_name_lookup(self):
165 def __getattr__(self, name):
171 self.assertNotIn('__set_name__', resolved,
174 def test_set_name_init_subclass(self):
176 def __set_name__(self, owner, name):
177 self.owner = owner
178 self.name = name
182 self = super().__new__(cls, name, bases, ns)
183 self.meta_owner = self.owner
184 self.meta_name = self.name
185 return self
195 self.assertIs(B.owner, B)
196 self.assertEqual(B.name, 'd')
197 self.assertIs(B.meta_owner, B)
198 self.assertEqual(B.name, 'd')
200 def test_set_name_modifying_dict(self):
203 def __set_name__(self, owner, name):
214 self.assertCountEqual(notified, ['a', 'b', 'c', 'd', 'e'])
216 def test_errors(self):
220 with self.assertRaises(TypeError):
224 with self.assertRaises(TypeError):
231 def __init__(self, name, bases, namespace, otherarg):
234 with self.assertRaises(TypeError):
242 def __init__(self, name, bases, namespace, otherarg):
244 self.otherarg = otherarg
249 self.assertEqual(MyClass.otherarg, 1)
251 def test_errors_changed_pep487(self):
258 with self.assertRaises(TypeError):
264 self = super().__new__(cls, name, bases, namespace)
265 self.otherarg = otherarg
266 return self
271 self.assertEqual(MyClass.otherarg, 1)
273 def test_type(self):
275 self.assertIsInstance(t, type)
276 self.assertEqual(t.__name__, 'NewClass')
278 with self.assertRaises(TypeError):