Commit 24ca4a23 authored by Berker Peksag's avatar Berker Peksag

Issue #23581: Add matmul support to MagicMock.

Patch by Håkan Lövdahl.
parent 363510d5
......@@ -1668,7 +1668,7 @@ magic_methods = (
)
numerics = (
"add sub mul div floordiv mod lshift rshift and xor or pow truediv"
"add sub mul matmul div floordiv mod lshift rshift and xor or pow truediv"
)
inplace = ' '.join('i%s' % n for n in numerics.split())
right = ' '.join('r%s' % n for n in numerics.split())
......
......@@ -424,5 +424,16 @@ class TestMockingMagicMethods(unittest.TestCase):
self.assertEqual(list(m), [])
def test_matmul(self):
m = MagicMock()
self.assertIsInstance(m @ 1, MagicMock)
m.__matmul__.return_value = 42
m.__rmatmul__.return_value = 666
m.__imatmul__.return_value = 24
self.assertEqual(m @ 1, 42)
self.assertEqual(1 @ m, 666)
m @= 24
self.assertEqual(m, 24)
if __name__ == '__main__':
unittest.main()
......@@ -18,6 +18,8 @@ Core and Builtins
Library
-------
- Issue #23581: Add matmul support to MagicMock. Patch by Håkan Lövdahl.
- Issue #23566: enable(), register(), dump_traceback() and
dump_traceback_later() functions of faulthandler now accept file
descriptors. Patch by Wei Wu.
......
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