def mock_update(http_request, http_response, url, headers=None): response = Response() response._content_consumed = True response.request = mock.create_autospec(Request) response.request.method = 'GET' response.headers = headers or {} response.headers.update({"content-type": "application/json; charset=utf8"}) response.reason = "OK" if url == ASYNC_URL: response.request.url = url response.status_code = POLLING_STATUS response._content = ASYNC_BODY.encode('ascii') response.randomFieldFromPollAsyncOpHeader = None elif url == LOCATION_URL: response.request.url = url response.status_code = POLLING_STATUS response._content = LOCATION_BODY.encode('ascii') response.randomFieldFromPollLocationHeader = None elif url == ERROR: raise BadEndpointError("boom") elif url == RESOURCE_URL: response.request.url = url response.status_code = POLLING_STATUS response._content = RESOURCE_BODY.encode('ascii') else: raise Exception('URL does not match') request = http_request( response.request.method, response.request.url, ) response = create_transport_response(http_response, request, response) if is_rest(http_response): response.body() return PipelineResponse( request, response, None # context )
def mock_send(http_request, http_response, method, status, headers=None, body=RESPONSE_BODY): if headers is None: headers = {} response = Response() response._content_consumed = True response._content = json.dumps(body).encode('ascii') if body is not None else None response.request = Request() response.request.method = method response.request.url = RESOURCE_URL response.request.headers = { 'x-ms-client-request-id': '67f4dd4e-6262-45e1-8bed-5c45cf23b6d9' } response.status_code = status response.headers = headers response.headers.update({"content-type": "application/json; charset=utf8"}) response.reason = "OK" if is_rest(http_request): request = http_request( response.request.method, response.request.url, headers=response.request.headers, content=body, ) else: request = CLIENT._request( response.request.method, response.request.url, None, # params response.request.headers, body, None, # form_content None # stream_content ) response = create_transport_response(http_response, request, response) if is_rest(http_response): response.body() return PipelineResponse( request, response, None # context )
def request(self, path, headers=None, data='', method="GET"): resp_obj = Response() if not headers: headers = {} url = path if os.environ[ "API_DOMAIN_NAME"] in path else self.domain + path response = request(method, url, headers=headers, data=data, allow_redirects=False) resp_obj.status_code = response.status_code resp_obj.headers = response.headers resp_obj.body = response.content return resp_obj