def _common_request( self, method, session, uri, **kwargs): if session: method_function = getattr(session, method) else: method_function = getattr(requests, method) self._capture_output() resp = method_function( self._get_url(session, uri), timeout=self._get_timeout(kwargs.pop('timeout', None)), cookies=kwargs.pop('cookies', self.cookies), **kwargs) log.log_request(resp) self._print_debug() log.log_response(resp) self.last_response = resp data = kwargs.get('data', None) if is_file_descriptor(data): data.close() return resp
def _common_request( self, method, session, uri, **kwargs): method_function = getattr(session, method) self._capture_output() log_options = kwargs.pop('log_options', None) resp = method_function( self._get_url(session, uri), params=kwargs.pop('params', None), timeout=self._get_timeout(kwargs.pop('timeout', None)), cookies=self.cookies, verify=self.verify, **kwargs) log.log_request(resp, log_options=log_options) self._print_debug() session.last_resp = resp log.log_response(resp, log_options=log_options) data = kwargs.get('data', None) if is_file_descriptor(data): data.close() return resp
def _common_request( self, method, session, uri, **kwargs): # TODO this won't log the real headers that have been added by requests itself # it should be moved after the real request to log those. # But at the same time in case of failure debug information are not logged. # (maybe it should be analysed) log.log_request(method, session, uri, **kwargs) method_function = getattr(session, method) self._capture_output() resp = method_function( self._get_url(session, uri), params=utils.utf8_urlencode(kwargs.pop('params', None)), timeout=self._get_timeout(kwargs.pop('timeout', None)), cookies=self.cookies, verify=self.verify, **kwargs) self._print_debug() session.last_resp = resp log.log_response(method, resp) return resp
def test_log_request(mocked_logger): request = Request(method='get', url='http://mock.rulezz') request = request.prepare() response = mock.MagicMock() response.history = [] response.request = request log_request(response) assert mocked_logger.info.call_args[0][0] == ( "%s Request : " % request.method + "url=%s \n " % request.url + "path_url=%s \n " % request.path_url + "headers=%s \n " % request.headers + "body=%s \n " % request.body)
def test_log_request_base64_body(mocked_logger): request = Request(method='get', url='http://mock.rulezz') request = request.prepare() response = mock.MagicMock() response.history = [] response.request = request log_request(response, log_options={'request_body_binary': True}) assert mocked_logger.info.call_args[0][0] == ( "%s Request : " % request.method + "url=%s \n " % request.url + "path_url=%s \n " % request.path_url + "headers=%s \n " % request.headers + "body(base64=True)=%s \n " % request.body)
def test_log_request_with_redirect(mocked_logger): request = Request(method='get', url='http://mock.rulezz/redirected') request = request.prepare() original = Request(method='get', url='http://mock.rulezz/original') original = original.prepare() response = mock.MagicMock() response.request = request response0 = mock.MagicMock() response0.request = original response.history = [response0, mock.MagicMock] log_request(response) assert mocked_logger.info.call_args[0][0] == ( "%s Request : " % request.method + "url=%s (redirected) \n " % response.history[0].request.url + "path_url=%s \n " % response.history[0].request.path_url + "headers=%s \n " % request.headers + "body=%s \n " % request.body)
def _common_request(self, method, session, uri, **kwargs): log.log_request(method, session, uri, **kwargs) method_function = getattr(session, method) self._capture_output() resp = method_function( self._get_url(session, uri), params=utils.utf8_urlencode(kwargs.pop('params', None)), timeout=self._get_timeout(kwargs.pop('timeout', None)), cookies=self.cookies, verify=self.verify, **kwargs) self._print_debug() session.last_resp = resp log.log_response(method, resp) return resp