Issue #5080: turn the DeprecationWarning from float arguments passed

to integer PyArg_Parse* format codes into a TypeError.  Add a
DeprecationWarning for floats passed with the 'L' format code, which
didn't previously have a warning.
This commit is contained in:
Mark Dickinson 2010-01-01 17:27:30 +00:00
parent edfe72f66f
commit 1b34d2552c
6 changed files with 65 additions and 28 deletions

View file

@ -502,11 +502,9 @@ class URandomTests (unittest.TestCase):
self.assertEqual(len(os.urandom(100)), 100)
self.assertEqual(len(os.urandom(1000)), 1000)
# see http://bugs.python.org/issue3708
with test_support.check_warnings():
# silence deprecation warnings about float arguments
self.assertEqual(len(os.urandom(0.9)), 0)
self.assertEqual(len(os.urandom(1.1)), 1)
self.assertEqual(len(os.urandom(2.0)), 2)
self.assertRaises(TypeError, os.urandom, 0.9)
self.assertRaises(TypeError, os.urandom, 1.1)
self.assertRaises(TypeError, os.urandom, 2.0)
except NotImplementedError:
pass