def test_do_post__socket_error(self, mock_notifier, mock_debug, mock_request): import socket notifier = mock_notifier() mock_request.side_effect = socket.error("kaboom") http = FixcityHttp(notifier) status, content = http.do_post('http://example.com', 'test body') self.assertEqual(status, None) self.assertEqual(content, None) self.assertEqual(notifier.on_server_temp_failure.call_count, 1)
def test_do_post__success(self, mock_notifier, mock_debug, mock_request, mock_response): response = mock_response() notifier = mock_notifier() response.status = 200 mock_request.return_value = (response, 'hello POST world') http = FixcityHttp(mock_notifier()) status, content = http.do_post('http://example.com', 'test body') self.assertEqual(content, 'hello POST world') self.assertEqual(status, 200) self.failIf(notifier.bounce.call_count)
def test_do_post__500_error(self, mock_notifier, mock_debug, mock_request, mock_response): response = mock_response() notifier = mock_notifier() response.status = 500 mock_request.return_value = (response, 'hello POST world') http = FixcityHttp(notifier) status, content = http.do_post('http://example.com', 'test body') self.assertEqual(status, 500) self.assertEqual(content, 'hello POST world') self.assertEqual(notifier.on_server_error.call_count, 1) self.assertEqual(notifier.on_server_error.call_args[0][0], content)