mirror of https://github.com/python/cpython.git
bpo-30308: Code coverage for argument in random.shuffle (#1504)
* bpo-30308: Code coverage for argument in random.shuffle * bpo-30308: Code coverage for argument in random.shuffle * bpo-30308: Code coverage for argument in random.shuffle
This commit is contained in:
parent
991adca012
commit
f111fd2e65
|
@ -9,6 +9,7 @@
|
||||||
from test import support
|
from test import support
|
||||||
from fractions import Fraction
|
from fractions import Fraction
|
||||||
|
|
||||||
|
|
||||||
class TestBasicOps:
|
class TestBasicOps:
|
||||||
# Superclass with tests common to all generators.
|
# Superclass with tests common to all generators.
|
||||||
# Subclasses must arrange for self.gen to retrieve the Random instance
|
# Subclasses must arrange for self.gen to retrieve the Random instance
|
||||||
|
@ -50,7 +51,7 @@ def __hash__(self):
|
||||||
@unittest.mock.patch('random._urandom') # os.urandom
|
@unittest.mock.patch('random._urandom') # os.urandom
|
||||||
def test_seed_when_randomness_source_not_found(self, urandom_mock):
|
def test_seed_when_randomness_source_not_found(self, urandom_mock):
|
||||||
# Random.seed() uses time.time() when an operating system specific
|
# Random.seed() uses time.time() when an operating system specific
|
||||||
# randomness source is not found. To test this on machines were it
|
# randomness source is not found. To test this on machines where it
|
||||||
# exists, run the above test, test_seedargs(), again after mocking
|
# exists, run the above test, test_seedargs(), again after mocking
|
||||||
# os.urandom() so that it raises the exception expected when the
|
# os.urandom() so that it raises the exception expected when the
|
||||||
# randomness source is not available.
|
# randomness source is not available.
|
||||||
|
@ -88,6 +89,15 @@ def test_shuffle(self):
|
||||||
self.assertTrue(lst != shuffled_lst)
|
self.assertTrue(lst != shuffled_lst)
|
||||||
shuffle(lst)
|
shuffle(lst)
|
||||||
self.assertTrue(lst != shuffled_lst)
|
self.assertTrue(lst != shuffled_lst)
|
||||||
|
self.assertRaises(TypeError, shuffle, (1, 2, 3))
|
||||||
|
|
||||||
|
def test_shuffle_random_argument(self):
|
||||||
|
# Test random argument to shuffle.
|
||||||
|
shuffle = self.gen.shuffle
|
||||||
|
mock_random = unittest.mock.Mock(return_value=0.5)
|
||||||
|
seq = bytearray(b'abcdefghijk')
|
||||||
|
shuffle(seq, mock_random)
|
||||||
|
mock_random.assert_called_with()
|
||||||
|
|
||||||
def test_choice(self):
|
def test_choice(self):
|
||||||
choice = self.gen.choice
|
choice = self.gen.choice
|
||||||
|
|
Loading…
Reference in New Issue