|
17 | 17 |
|
18 | 18 | eps = 1E-05 |
19 | 19 | NAN = float('nan') |
20 | | -NNAN = float('-nan') |
21 | 20 | INF = float('inf') |
22 | 21 | NINF = float('-inf') |
23 | 22 | FLOAT_MAX = sys.float_info.max |
@@ -480,12 +479,14 @@ def test_signbit(self): |
480 | 479 | self.assertRaises(TypeError, math.signbit) |
481 | 480 | self.assertRaises(TypeError, math.signbit, '1.0') |
482 | 481 |
|
483 | | - for arg in [0, 0., 1, 1., INF, NAN]: |
484 | | - with self.subTest('positive', arg=arg): |
485 | | - self.assertFalse(math.signbit(arg)) |
486 | | - for arg in [-0., -1, -1., NINF, NNAN]: |
487 | | - with self.subTest('negative', arg=arg): |
488 | | - self.assertTrue(math.signbit(arg)) |
| 482 | + # C11, §7.12.3.6 requires signbit() to return a nonzero value |
| 483 | + # if and only if the sign of its argument value is negative, |
| 484 | + # but in practice, we are only interested in a boolean value. |
| 485 | + self.assertIsInstance(math.signbit(1.0), bool) |
| 486 | + |
| 487 | + for arg in [0., 1., INF, NAN]: |
| 488 | + self.assertFalse(math.signbit(arg)) |
| 489 | + self.assertTrue(math.signbit(-arg)) |
489 | 490 |
|
490 | 491 | def testCos(self): |
491 | 492 | self.assertRaises(TypeError, math.cos) |
|
0 commit comments