)]}'
{"tests/test_client.py":[{"author":{"_account_id":679,"name":"Kevin L. Mitchell","email":"klmitch@mit.edu","username":"klmitch"},"change_message_id":"c193378cc1b151bb273176ebbe69314dd1789ea8","unresolved":false,"context_lines":[{"line_number":31,"context_line":"                                                timeout\u003d2,"},{"line_number":32,"context_line":"                                                auth_url\u003d\"http://www.blah.com\")"},{"line_number":33,"context_line":"        self.assertEqual(instance.timeout, 2)"},{"line_number":34,"context_line":"        requests.request \u003d mock.Mock()"},{"line_number":35,"context_line":"        requests.request.return_value \u003d requests.Response()"},{"line_number":36,"context_line":"        requests.request.return_value.status_code \u003d 200"},{"line_number":37,"context_line":"        requests.request.return_value.headers \u003d {"}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAAM3%2F%2FkiY%3D","line":34,"updated":"2013-01-15 17:27:19.000000000","message":"Hmmm…as far as I can see, you never reset requests.request, which, IMO, is a bad thing.  A better way to accomplish what you want is by using mock.patch() in a context manager:\n\n    mock_request \u003d mock.Mock()\n    mock_request.return_value \u003d requests.Response()\n    mock_request.return_value.status_code \u003d 200\n    mock_request.return_value.headers \u003d {\n        \u0027x-server-management-url\u0027: \u0027blah.com\u0027,\n        \u0027x-auth-token\u0027: \u0027blah\u0027,\n    }\n    with mock.patch(\u0027requests.request\u0027, mock_request):\n        instance.authenticate()\n    mock_request.assert_called_once_with(mock.ANY, mock.ANY,\n                                         timeout\u003d2,\n                                         headers\u003dmock.ANY,\n                                         verify\u003dmock.ANY,\n                                         config\u003dmock.ANY)\n\nThis will isolate the patch on requests.request to just the call to instance.authenticate().  I will also frequently use the decorator form of mock.patch() in this instance, e.g., something like:\n\n    @mock.patch(\u0027requests.request\u0027, return_value\u003drequests.Response())\n    def test_client_with_timeout(self, mock_request):\n        …\n        mock_request.return_value.status_code \u003d 200\n        mock_request.return_value.headers \u003d {\n            …\n        }\n        instance.authenticate()\n        mock_request.assert_called_once_with(…)","commit_id":"6af714403065e4298b9de929fd7156d9c9d41e36"},{"author":{"_account_id":1297,"name":"Joshua Harlow","email":"jxharlow@godaddy.com","username":"harlowja"},"change_message_id":"1bb54f119b3ef0fda19efa1c1a7ec51a0e58ebc6","unresolved":false,"context_lines":[{"line_number":31,"context_line":"                                                timeout\u003d2,"},{"line_number":32,"context_line":"                                                auth_url\u003d\"http://www.blah.com\")"},{"line_number":33,"context_line":"        self.assertEqual(instance.timeout, 2)"},{"line_number":34,"context_line":"        requests.request \u003d mock.Mock()"},{"line_number":35,"context_line":"        requests.request.return_value \u003d requests.Response()"},{"line_number":36,"context_line":"        requests.request.return_value.status_code \u003d 200"},{"line_number":37,"context_line":"        requests.request.return_value.headers \u003d {"}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAAM3%2F%2Fh%2FY%3D","line":34,"in_reply_to":"AAAAM3%2F%2FkiY%3D","updated":"2013-01-17 01:39:50.000000000","message":"Good to know, applying the first version. Thx!","commit_id":"6af714403065e4298b9de929fd7156d9c9d41e36"},{"author":{"_account_id":679,"name":"Kevin L. Mitchell","email":"klmitch@mit.edu","username":"klmitch"},"change_message_id":"ffe42c9e2827823b1e531ef04a20ec0fc22ed8a8","unresolved":false,"context_lines":[{"line_number":40,"context_line":"        }"},{"line_number":41,"context_line":"        with mock.patch(\u0027requests.request\u0027, mock_request):"},{"line_number":42,"context_line":"            instance.authenticate()"},{"line_number":43,"context_line":"            requests.request.assert_called_with(mock.ANY, mock.ANY,"},{"line_number":44,"context_line":"                                                timeout\u003d2,"},{"line_number":45,"context_line":"                                                headers\u003dmock.ANY,"},{"line_number":46,"context_line":"                                                verify\u003dmock.ANY,"}],"source_content_type":"text/x-python","patch_set":9,"id":"AAAAM3%2F%2FhLc%3D","line":43,"updated":"2013-01-17 16:41:20.000000000","message":"Just as a point of information, this assert does not need to be in the context, if you altered it to use mock_request instead of requests.request.  I also tend to use assert_called_once_with() as opposed to assert_called_with(), but that\u0027s more a personal preference, unless you really need to assure that the mock is only called once.","commit_id":"9fd2c8a59da7e7e328f4813f6fbc834fc560b25d"}]}
