def get_status(self, search_id): # It is a synchronous connector. # return {"code": 200, "status": "COMPLETED"} respObj = Response() respObj.code = "200" respObj.error_type = "" respObj.status_code = 200 content = '{"search_id": "' + search_id + \ '", "progress":"Completed", "status":"COMPLETED", "data": {"message":"Completed for the search id provided."}}' respObj._content = bytes(content, 'utf-8') return ResponseWrapper(respObj)
def createResponse(self, resp, newContent): pp = pprint.PrettyPrinter(indent=1) respObj = Response() if (resp.code == 200): respObj.code = "200" respObj.status_code = 200 content = json.dumps(newContent) #put new content in response respObj._content = bytes(content, 'utf-8') elif (resp.code == 400): respObj.code = "400" respObj.error_type = "Bad Request" respObj.status_code = 400 respObj.message = "Could not generate response." elif (resp.code == 500): respObj.code = "500" respObj.error_type = "Internal Server Error" respObj.status_code = 400 respObj.message = "An internal server error occured. " return ResponseWrapper(respObj)
def download_page(pURL, max_retry=3, attempt=0): try: r = requests.get(pURL) return r except requests.ConnectionError: logging.warning("Connection Error for URL: {}".format(pURL)) response = Response() response.code = "Connection Error" response.error_type = "Connection" response.status_code = 451 response._content = b'{"error":"Connection Error"}' return response except requests.Timeout: if attempt < max_retry: download_page(pURL, max_retry, attemp + 1) else: logging.warning("Connection Timeout for URL: {}".format(pURL)) response = Response() response.code = "Timeout" response.error_type = "Connection" response.status_code = 400 response._content = b'{"error":"Timeout"}' return response except requests.TooManyRedirects: logging.warning("Too Many Redirects for URL: {}".format(pURL)) response = Response() response.code = "Too many redirects" response.error_type = "Redirects" response.status_code = 309 response._content = b'{"error":"Too many redirects"}' return response except requests.RequestException as e: logging.warning("Generic Request Exception for URL: {}".format(pURL)) response = Response() response.code = "Unknown error" response.error_type = "Generic" response.status_code = 450 response._content = b'{"error":"Unknown error"}' return response
def proto_sources_response(service): from requests.models import Response with open("tests/api_responses/proto_sources_{}.json".format( service)) as file: content = file.read() response = Response() response.code = "OK" response.status_code = 200 response.headers = {"content-type": "application/json; charset=utf8"} response._content = bytes(content, "utf-8") return response
def test_result_fail(self): # generate intended response object expected_response = Response() expected_response.code = "expired" expected_response.error_type = "expired" expected_response.status_code = 400 expected_response._content = b'{ "error" : "Can not connect to API" }' objectified_response = ApiResult(expected_response) # check values of objects are equal self.assertEqual(ApiCall().get_result("").error_message, objectified_response.error_message) self.assertEqual(ApiCall().get_result("").result, objectified_response.result) self.assertEqual(ApiCall().get_result("").is_success, objectified_response.is_success)
from requests.models import Response resp = Response() resp.code = "expired" resp.error_type = "expired" resp.status_code = 200 resp._content = b'["Under-Review","IGO-Complete","Passed","Failed","Resequence-Pool","Repool-Sample","Recapture-Sample","New-Library-Needed","Required-Additional-Reads"]'
def test_raised_error_for_response_error(self): badResponse = Response() badResponse.code = "bad request" badResponse.reason = "bad request" badResponse.status_code = 400 self.assertRaises(ValueError, lambda: _handle_response(badResponse))
def get_temporary_objectstore_credentials_response(project, apikey): response = Response() response.code = 'error' response.status_code = 400 raise ServiceError('Create rest client failed', response)
def create_rest_client_response(server, retry_multiplier, retry_max_exp, retry_stop, verbose): response = Response() response.code = 'error' response.status_code = 400 raise ServiceError('Create rest client failed', response)