MCPcopy Index your code
hub / github.com/python/cpython / test_subclass_replace

Method test_subclass_replace

Lib/test/datetimetester.py:4310–4333  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

4308 self.assertRaises(ValueError, copy.replace, base, microsecond=1000000)
4309
4310 def test_subclass_replace(self):
4311 class TimeSubclass(self.theclass):
4312 def __new__(cls, *args, **kwargs):
4313 result = self.theclass.__new__(cls, *args, **kwargs)
4314 result.extra = 7
4315 return result
4316
4317 ctime = TimeSubclass(12, 30)
4318 ctime2 = TimeSubclass(12, 30, fold=1)
4319
4320 test_cases = [
4321 ('self.replace', ctime.replace(hour=10), 0),
4322 ('self.replace', ctime2.replace(hour=10), 1),
4323 ('copy.replace', copy.replace(ctime, hour=10), 0),
4324 ('copy.replace', copy.replace(ctime2, hour=10), 1),
4325 ]
4326
4327 for name, res, fold in test_cases:
4328 with self.subTest(name, fold=fold):
4329 self.assertIs(type(res), TimeSubclass)
4330 self.assertEqual(res.hour, 10)
4331 self.assertEqual(res.minute, 30)
4332 self.assertEqual(res.extra, 7)
4333 self.assertEqual(res.fold, fold)
4334
4335 def test_subclass_time(self):
4336

Callers

nothing calls this directly

Calls 5

TimeSubclassClass · 0.70
replaceMethod · 0.45
subTestMethod · 0.45
assertIsMethod · 0.45
assertEqualMethod · 0.45

Tested by

no test coverage detected