|
3 | 3 |
|
4 | 4 | import sys |
5 | 5 |
|
6 | | -import enum |
7 | 6 | import random |
8 | 7 | import math |
9 | 8 | import array |
@@ -1354,35 +1353,14 @@ def test_shift_bool(self): |
1354 | 1353 | self.assertEqual(type(value >> shift), int) |
1355 | 1354 |
|
1356 | 1355 | def test_as_integer_ratio(self): |
1357 | | - tests = [10, 0, -10, 1] |
| 1356 | + class myint(int): |
| 1357 | + pass |
| 1358 | + tests = [10, 0, -10, 1, sys.maxsize + 1, True, False, myint(42)] |
1358 | 1359 | for value in tests: |
1359 | 1360 | numerator, denominator = value.as_integer_ratio() |
1360 | | - self.assertEqual((numerator, denominator), (value, 1)) |
1361 | | - self.assertIsInstance(numerator, int) |
1362 | | - self.assertIsInstance(denominator, int) |
1363 | | - |
1364 | | - def test_as_integer_ratio_maxint(self): |
1365 | | - x = sys.maxsize + 1 |
1366 | | - self.assertEqual(x.as_integer_ratio()[0], x) |
1367 | | - |
1368 | | - def test_as_integer_ratio_bool(self): |
1369 | | - self.assertEqual(True.as_integer_ratio(), (1, 1)) |
1370 | | - self.assertEqual(False.as_integer_ratio(), (0, 1)) |
1371 | | - self.assertEqual(type(True.as_integer_ratio()[0]), int) |
1372 | | - self.assertEqual(type(False.as_integer_ratio()[0]), int) |
1373 | | - |
1374 | | - def test_as_integer_ratio_int_enum(self): |
1375 | | - class Foo(enum.IntEnum): |
1376 | | - X = 42 |
1377 | | - self.assertEqual(Foo.X.as_integer_ratio(), (42, 1)) |
1378 | | - self.assertEqual(type(Foo.X.as_integer_ratio()[0]), int) |
1379 | | - |
1380 | | - def test_as_integer_ratio_int_flag(self): |
1381 | | - class Foo(enum.IntFlag): |
1382 | | - R = 1 << 2 |
1383 | | - self.assertEqual(Foo.R.as_integer_ratio(), (4, 1)) |
1384 | | - self.assertEqual(type(Foo.R.as_integer_ratio()[0]), int) |
1385 | | - |
| 1361 | + self.assertEqual((numerator, denominator), (int(value), 1)) |
| 1362 | + self.assertEqual(type(numerator), int) |
| 1363 | + self.assertEqual(type(denominator), int) |
1386 | 1364 |
|
1387 | 1365 |
|
1388 | 1366 | if __name__ == "__main__": |
|
0 commit comments