mirror of
https://github.com/python/cpython.git
synced 2025-10-17 20:28:43 +00:00
Closes issue 14636. mock objects raise exceptions from an iterable side_effect
This commit is contained in:
parent
24117a748b
commit
2cd48738ba
4 changed files with 31 additions and 53 deletions
|
@ -868,6 +868,16 @@ class MockTest(unittest.TestCase):
|
|||
self.assertRaises(StopIteration, mock)
|
||||
|
||||
|
||||
def test_side_effect_iterator_exceptions(self):
|
||||
for Klass in Mock, MagicMock:
|
||||
iterable = (ValueError, 3, KeyError, 6)
|
||||
m = Klass(side_effect=iterable)
|
||||
self.assertRaises(ValueError, m)
|
||||
self.assertEqual(m(), 3)
|
||||
self.assertRaises(KeyError, m)
|
||||
self.assertEqual(m(), 6)
|
||||
|
||||
|
||||
def test_side_effect_setting_iterator(self):
|
||||
mock = Mock()
|
||||
mock.side_effect = iter([1, 2, 3])
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue