(self)
| 1893 | self.assertEqual(res.extra, 7) |
| 1894 | |
| 1895 | def test_subclass_date(self): |
| 1896 | |
| 1897 | class C(self.theclass): |
| 1898 | theAnswer = 42 |
| 1899 | |
| 1900 | def __new__(cls, *args, **kws): |
| 1901 | temp = kws.copy() |
| 1902 | extra = temp.pop('extra') |
| 1903 | result = self.theclass.__new__(cls, *args, **temp) |
| 1904 | result.extra = extra |
| 1905 | return result |
| 1906 | |
| 1907 | def newmeth(self, start): |
| 1908 | return start + self.year + self.month |
| 1909 | |
| 1910 | args = 2003, 4, 14 |
| 1911 | |
| 1912 | dt1 = self.theclass(*args) |
| 1913 | dt2 = C(*args, **{'extra': 7}) |
| 1914 | |
| 1915 | self.assertEqual(dt2.__class__, C) |
| 1916 | self.assertEqual(dt2.theAnswer, 42) |
| 1917 | self.assertEqual(dt2.extra, 7) |
| 1918 | self.assertEqual(dt1.toordinal(), dt2.toordinal()) |
| 1919 | self.assertEqual(dt2.newmeth(-7), dt1.year + dt1.month - 7) |
| 1920 | |
| 1921 | def test_subclass_alternate_constructors(self): |
| 1922 | # Test that alternate constructors call the constructor |
nothing calls this directly
no test coverage detected