Skip to content

Commit 511e2f1

Browse files
committed
Add failing test for pure Python datetime subclasses
1 parent fe4ea9c commit 511e2f1

File tree

1 file changed

+14
-0
lines changed

1 file changed

+14
-0
lines changed

Lib/test/datetimetester.py

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1520,6 +1520,13 @@ def test_replace(self):
15201520
base = cls(2000, 2, 29)
15211521
self.assertRaises(ValueError, base.replace, year=2001)
15221522

1523+
def test_subclass_replace(self):
1524+
class C(self.theclass):
1525+
pass
1526+
1527+
dt = C(2012, 1, 1)
1528+
self.assertIs(type(dt.replace(year=2013)), C)
1529+
15231530
def test_subclass_date(self):
15241531

15251532
class C(self.theclass):
@@ -2626,6 +2633,13 @@ def test_replace(self):
26262633
self.assertRaises(ValueError, base.replace, second=100)
26272634
self.assertRaises(ValueError, base.replace, microsecond=1000000)
26282635

2636+
def test_subclass_replace(self):
2637+
class C(self.theclass):
2638+
pass
2639+
2640+
ctime = C(12, 30)
2641+
self.assertIs(type(ctime.replace(hour=10)), C)
2642+
26292643
def test_subclass_time(self):
26302644

26312645
class C(self.theclass):

0 commit comments

Comments
 (0)