mirror of https://github.com/python/cpython
gh-103329: Add regression test for PropertyMock with side effect (#103358)
This commit is contained in:
parent
91794e5873
commit
26c65980dc
|
@ -1077,7 +1077,7 @@ class TestCallList(unittest.TestCase):
|
||||||
p.stop()
|
p.stop()
|
||||||
|
|
||||||
|
|
||||||
def test_propertymock_returnvalue(self):
|
def test_propertymock_bare(self):
|
||||||
m = MagicMock()
|
m = MagicMock()
|
||||||
p = PropertyMock()
|
p = PropertyMock()
|
||||||
type(m).foo = p
|
type(m).foo = p
|
||||||
|
@ -1088,6 +1088,27 @@ class TestCallList(unittest.TestCase):
|
||||||
self.assertNotIsInstance(returned, PropertyMock)
|
self.assertNotIsInstance(returned, PropertyMock)
|
||||||
|
|
||||||
|
|
||||||
|
def test_propertymock_returnvalue(self):
|
||||||
|
m = MagicMock()
|
||||||
|
p = PropertyMock(return_value=42)
|
||||||
|
type(m).foo = p
|
||||||
|
|
||||||
|
returned = m.foo
|
||||||
|
p.assert_called_once_with()
|
||||||
|
self.assertEqual(returned, 42)
|
||||||
|
self.assertNotIsInstance(returned, PropertyMock)
|
||||||
|
|
||||||
|
|
||||||
|
def test_propertymock_side_effect(self):
|
||||||
|
m = MagicMock()
|
||||||
|
p = PropertyMock(side_effect=ValueError)
|
||||||
|
type(m).foo = p
|
||||||
|
|
||||||
|
with self.assertRaises(ValueError):
|
||||||
|
m.foo
|
||||||
|
p.assert_called_once_with()
|
||||||
|
|
||||||
|
|
||||||
class TestCallablePredicate(unittest.TestCase):
|
class TestCallablePredicate(unittest.TestCase):
|
||||||
|
|
||||||
def test_type(self):
|
def test_type(self):
|
||||||
|
|
|
@ -0,0 +1 @@
|
||||||
|
Regression tests for the behaviour of ``unittest.mock.PropertyMock`` were added.
|
Loading…
Reference in New Issue