summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndrew Svetlov <andrew.svetlov@gmail.com>2013-04-13 15:00:04 (GMT)
committerAndrew Svetlov <andrew.svetlov@gmail.com>2013-04-13 15:00:04 (GMT)
commitb4fd468f125955b14f53e77e1f29b216ca888c88 (patch)
tree7c640692ea514f6c5c067a3eadc5fdcf05dc5bf4
parent64aafeb4de3b5e85007f2107250e6f1da4df2516 (diff)
downloadcpython-b4fd468f125955b14f53e77e1f29b216ca888c88.zip
cpython-b4fd468f125955b14f53e77e1f29b216ca888c88.tar.gz
cpython-b4fd468f125955b14f53e77e1f29b216ca888c88.tar.bz2
Revert changes for #13355 by request from Raymond Hettinger
-rw-r--r--Lib/random.py10
-rw-r--r--Lib/test/test_random.py32
-rw-r--r--Misc/ACKS1
-rw-r--r--Misc/NEWS3
4 files changed, 1 insertions, 45 deletions
diff --git a/Lib/random.py b/Lib/random.py
index 11a0606..7d8d4f3 100644
--- a/Lib/random.py
+++ b/Lib/random.py
@@ -341,16 +341,6 @@ class Random(_random.Random):
http://en.wikipedia.org/wiki/Triangular_distribution
"""
- # Sanity check. According to the doc low must be less or equal to
- # high. And mode should be somewhere between these bounds.
- if low > high:
- raise ValueError('high cannot be less then low.')
- if mode is not None and (mode < low or mode > high):
- raise ValueError('mode must be between low and high.')
-
- if high == low:
- return low
-
u = self.random()
c = 0.5 if mode is None else (mode - low) / (high - low)
if u > c:
diff --git a/Lib/test/test_random.py b/Lib/test/test_random.py
index 34e144c..c3ab7d2 100644
--- a/Lib/test/test_random.py
+++ b/Lib/test/test_random.py
@@ -46,36 +46,6 @@ class TestBasicOps(unittest.TestCase):
self.assertRaises(TypeError, self.gen.seed, 1, 2, 3, 4)
self.assertRaises(TypeError, type(self.gen), [])
- def test_triangular(self):
- # Check that triangular() correctly handles bad input. See issue 13355.
-
- # mode > high.
- with self.assertRaises(ValueError):
- random.triangular(mode=2)
- with self.assertRaises(ValueError):
- random.triangular(low=1, high=10, mode=11)
- with self.assertRaises(ValueError):
- random.triangular(low=1, high=1, mode=11)
-
- # mode < low.
- with self.assertRaises(ValueError):
- random.triangular(mode=-1)
- with self.assertRaises(ValueError):
- random.triangular(low=1, high=10, mode=0)
- with self.assertRaises(ValueError):
- random.triangular(low=1, high=1, mode=0)
-
- # low > high
- with self.assertRaises(ValueError):
- random.triangular(low=5, high=2)
- with self.assertRaises(ValueError):
- random.triangular(low=5, high=2, mode=1)
- with self.assertRaises(ValueError):
- random.triangular(low=-2, high=-5)
-
- self.assertEqual(random.triangular(low=10, high=10), 10)
- self.assertEqual(random.triangular(low=10, high=10, mode=10), 10)
-
def test_choice(self):
choice = self.gen.choice
with self.assertRaises(IndexError):
@@ -519,7 +489,7 @@ class TestDistributions(unittest.TestCase):
for variate, args, expected in [
(g.uniform, (10.0, 10.0), 10.0),
(g.triangular, (10.0, 10.0), 10.0),
- (g.triangular, (10.0, 10.0, 10.0), 10.0),
+ #(g.triangular, (10.0, 10.0, 10.0), 10.0),
(g.expovariate, (float('inf'),), 0.0),
(g.vonmisesvariate, (3.0, float('inf')), 3.0),
(g.gauss, (10.0, 0.0), 10.0),
diff --git a/Misc/ACKS b/Misc/ACKS
index fb0ff72..7382dec 100644
--- a/Misc/ACKS
+++ b/Misc/ACKS
@@ -1088,7 +1088,6 @@ Nick Seidenman
Žiga Seilnacht
Yury Selivanov
Fred Sells
-Yuriy Senko
Jiwon Seo
Iñigo Serna
Joakim Sernbrant
diff --git a/Misc/NEWS b/Misc/NEWS
index 94a3ed3..e04324f 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -26,9 +26,6 @@ Core and Builtins
Library
-------
-- Issue #13355: Raise ValueError on random.triangular call with invalid params.
- Initial patch by Yuriy Senko.
-
- Issue #16658: add missing return to HTTPConnection.send()
Patch by Jeff Knupp.