Commit a785dece authored by Berker Peksag's avatar Berker Peksag

Issue #23568: Add rdivmod support to MagicMock() objects.

Patch by Håkan Lövdahl.
parent b19542d0
......@@ -1644,7 +1644,9 @@ magic_methods = (
"len contains iter "
"hash str sizeof "
"enter exit "
"divmod neg pos abs invert "
# we added divmod and rdivmod here instead of numerics
# because there is no idivmod
"divmod rdivmod neg pos abs invert "
"complex int float index "
"trunc floor ceil "
"bool next "
......
......@@ -424,5 +424,20 @@ class TestMockingMagicMethods(unittest.TestCase):
self.assertEqual(list(m), [])
def test_divmod_and_rdivmod(self):
m = MagicMock()
self.assertIsInstance(divmod(5, m), MagicMock)
m.__divmod__.return_value = (2, 1)
self.assertEqual(divmod(m, 2), (2, 1))
m = MagicMock()
foo = divmod(2, m)
self.assertIsInstance(foo, MagicMock)
foo_direct = m.__divmod__(2)
self.assertIsInstance(foo_direct, MagicMock)
bar = divmod(m, 2)
self.assertIsInstance(bar, MagicMock)
bar_direct = m.__rdivmod__(2)
self.assertIsInstance(bar_direct, MagicMock)
if __name__ == '__main__':
unittest.main()
......@@ -18,6 +18,9 @@ Core and Builtins
Library
-------
- Issue #23568: Add rdivmod support to MagicMock() objects.
Patch by Håkan Lövdahl.
- Issue #23138: Fixed parsing cookies with absent keys or values in cookiejar.
Patch by Demian Brecht.
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment