This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author paetling
Recipients ned.deily, paetling, ronaldoussoren
Date 2015-09-04.12:25:40
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1441369541.43.0.73938065209.issue25000@psf.upfronthosting.co.za>
In-reply-to
Content
Consider the following lines of code:

def test_mock(val):
    fake_mock = Mock()
    a = {}  
    fake_mock.func(a)
    a['val'] = 5
    fake_mock.func.assert_has_calls([call({})])
What i would expect would be for this statement to pass. What I actually see is the following:

Traceback (most recent call last):
File "/gc/gclib/python/tests/kafka_production/encoding_test.py", line 121, in test_mock
fake_mock.func.assert_has_calls([call({})])
File "/usr/local/lib/python2.7/dist-packages/mock.py", line 863, in assert_has_calls
'Actual: %r' % (calls, self.mock_calls)
AssertionError: Calls not found.
Expected: [call({})]
Actual: [call({'val': 5})]
Mock thinks that I have passed in {'val': 5}, when I in fact did pass in {}. The errors seems to be the way args and kwargs are being grabbed in _mock_call function
History
Date User Action Args
2015-09-04 12:25:41paetlingsetrecipients: + paetling, ronaldoussoren, ned.deily
2015-09-04 12:25:41paetlingsetmessageid: <1441369541.43.0.73938065209.issue25000@psf.upfronthosting.co.za>
2015-09-04 12:25:41paetlinglinkissue25000 messages
2015-09-04 12:25:40paetlingcreate