(self)
| 637 | self.assertEqual(F(0, 6).as_integer_ratio(), (0, 1)) |
| 638 | |
| 639 | def testLimitDenominator(self): |
| 640 | rpi = F('3.1415926535897932') |
| 641 | self.assertEqual(rpi.limit_denominator(10000), F(355, 113)) |
| 642 | self.assertEqual(-rpi.limit_denominator(10000), F(-355, 113)) |
| 643 | self.assertEqual(rpi.limit_denominator(113), F(355, 113)) |
| 644 | self.assertEqual(rpi.limit_denominator(112), F(333, 106)) |
| 645 | self.assertEqual(F(201, 200).limit_denominator(100), F(1)) |
| 646 | self.assertEqual(F(201, 200).limit_denominator(101), F(102, 101)) |
| 647 | self.assertEqual(F(0).limit_denominator(10000), F(0)) |
| 648 | for i in (0, -1): |
| 649 | self.assertRaisesMessage( |
| 650 | ValueError, "max_denominator should be at least 1", |
| 651 | F(1).limit_denominator, i) |
| 652 | |
| 653 | def testConversions(self): |
| 654 | self.assertTypedEquals(-1, math.trunc(F(-11, 10))) |
nothing calls this directly
no test coverage detected