Issue #3708: os.urandom no longer goes into an infinite loop when passed a
non-integer floating point number.
diff --git a/Lib/test/test_os.py b/Lib/test/test_os.py
index cec023d..a618af4 100644
--- a/Lib/test/test_os.py
+++ b/Lib/test/test_os.py
@@ -497,6 +497,10 @@
self.assertEqual(len(os.urandom(10)), 10)
self.assertEqual(len(os.urandom(100)), 100)
self.assertEqual(len(os.urandom(1000)), 1000)
+ # see http://bugs.python.org/issue3708
+ self.assertEqual(len(os.urandom(0.9)), 0)
+ self.assertEqual(len(os.urandom(1.1)), 1)
+ self.assertEqual(len(os.urandom(2.0)), 2)
except NotImplementedError:
pass