| 518 | theclass = timedelta |
| 519 | |
| 520 | def test_constructor(self): |
| 521 | eq = self.assertEqual |
| 522 | ra = self.assertRaises |
| 523 | td = timedelta |
| 524 | |
| 525 | # Check keyword args to constructor |
| 526 | eq(td(), td(weeks=0, days=0, hours=0, minutes=0, seconds=0, |
| 527 | milliseconds=0, microseconds=0)) |
| 528 | eq(td(1), td(days=1)) |
| 529 | eq(td(0, 1), td(seconds=1)) |
| 530 | eq(td(0, 0, 1), td(microseconds=1)) |
| 531 | eq(td(weeks=1), td(days=7)) |
| 532 | eq(td(days=1), td(hours=24)) |
| 533 | eq(td(hours=1), td(minutes=60)) |
| 534 | eq(td(minutes=1), td(seconds=60)) |
| 535 | eq(td(seconds=1), td(milliseconds=1000)) |
| 536 | eq(td(milliseconds=1), td(microseconds=1000)) |
| 537 | |
| 538 | # Check float args to constructor |
| 539 | eq(td(weeks=1.0/7), td(days=1)) |
| 540 | eq(td(days=1.0/24), td(hours=1)) |
| 541 | eq(td(hours=1.0/60), td(minutes=1)) |
| 542 | eq(td(minutes=1.0/60), td(seconds=1)) |
| 543 | eq(td(seconds=0.001), td(milliseconds=1)) |
| 544 | eq(td(milliseconds=0.001), td(microseconds=1)) |
| 545 | |
| 546 | # Check type of args to constructor |
| 547 | ra(TypeError, lambda: td(weeks='1')) |
| 548 | ra(TypeError, lambda: td(days='1')) |
| 549 | ra(TypeError, lambda: td(hours='1')) |
| 550 | ra(TypeError, lambda: td(minutes='1')) |
| 551 | ra(TypeError, lambda: td(seconds='1')) |
| 552 | ra(TypeError, lambda: td(milliseconds='1')) |
| 553 | ra(TypeError, lambda: td(microseconds='1')) |
| 554 | |
| 555 | def test_computations(self): |
| 556 | eq = self.assertEqual |