summaryrefslogtreecommitdiffstats
path: root/Lib/unittest
diff options
context:
space:
mode:
authorVictor Stinner <victor.stinner@gmail.com>2017-01-06 17:15:51 (GMT)
committerVictor Stinner <victor.stinner@gmail.com>2017-01-06 17:15:51 (GMT)
commit84b6fb0eea29b3b28a1a11124526b01ec0c9d17a (patch)
tree36adf93741ffd1325d0b9a3c9bd7631efbf082ab /Lib/unittest
parent9505b03bb0d3c5828115fec9306cb976c43f04d9 (diff)
downloadcpython-84b6fb0eea29b3b28a1a11124526b01ec0c9d17a.zip
cpython-84b6fb0eea29b3b28a1a11124526b01ec0c9d17a.tar.gz
cpython-84b6fb0eea29b3b28a1a11124526b01ec0c9d17a.tar.bz2
Fix unittest.mock._Call: don't ignore name
Issue #28961: Fix unittest.mock._Call helper: don't ignore the name parameter anymore. Patch written by Jiajun Huang.
Diffstat (limited to 'Lib/unittest')
-rw-r--r--Lib/unittest/mock.py3
-rw-r--r--Lib/unittest/test/testmock/testhelpers.py14
2 files changed, 15 insertions, 2 deletions
diff --git a/Lib/unittest/mock.py b/Lib/unittest/mock.py
index f134919..dcac5a2 100644
--- a/Lib/unittest/mock.py
+++ b/Lib/unittest/mock.py
@@ -1961,9 +1961,8 @@ class _Call(tuple):
If the _Call has no name then it will match any name.
"""
- def __new__(cls, value=(), name=None, parent=None, two=False,
+ def __new__(cls, value=(), name='', parent=None, two=False,
from_kall=True):
- name = ''
args = ()
kwargs = {}
_len = len(value)
diff --git a/Lib/unittest/test/testmock/testhelpers.py b/Lib/unittest/test/testmock/testhelpers.py
index 3477634..d5f9e7c 100644
--- a/Lib/unittest/test/testmock/testhelpers.py
+++ b/Lib/unittest/test/testmock/testhelpers.py
@@ -306,6 +306,20 @@ class CallTest(unittest.TestCase):
other_args = _Call(((1, 2), {'a': 3}))
self.assertEqual(args, other_args)
+ def test_call_with_name(self):
+ self.assertEqual(
+ 'foo',
+ _Call((), 'foo')[0],
+ )
+ self.assertEqual(
+ '',
+ _Call((('bar', 'barz'), ), )[0]
+ )
+ self.assertEqual(
+ '',
+ _Call((('bar', 'barz'), {'hello': 'world'}), )[0]
+ )
+
class SpecSignatureTest(unittest.TestCase):