def test_get_with_timeout(self, mock_get): mock_get.side_effect = Timeout(self.error_msg) with app.app_context() as ac: ac.g.trace_id = None ac.g.requests = requests.Session() with app.test_request_context(): with self.assertRaises(ApplicationError) as context: AccountAPI.get(self, '1234-567-890') self.assertTrue(ApplicationError in str(context.exception)) self.assertEqual( context.exception.message, 'Connection to account_api timed out: {}'.format( self.error_msg)) self.assertEqual(context.exception.code, 'E711') self.assertEqual(context.exception.http_code, 500)
def test_get_connection_error(self, mock_get): with app.app_context() as ac: ac.g.trace_id = None ac.g.requests = requests.Session() with app.test_request_context(): mock_get.side_effect = ConnectionError(self.error_msg) with self.assertRaises(ApplicationError) as context: AccountAPI.get(self, '1234-567-890') self.assertEqual( context.exception.message, 'Encountered an error connecting to account_api: {}'. format(self.error_msg)) self.assertEqual(context.exception.code, 'E710') self.assertEqual(context.exception.http_code, 500)
def test_get_http_error(self, mock_get): with app.app_context() as ac: ac.g.trace_id = None ac.g.requests = requests.Session() with app.test_request_context(): mock_get.side_effect = HTTPError(self.error_msg) with self.assertRaises(ApplicationError) as context: AccountAPI.get(self, '1234-567-890') self.assertEqual( context.exception.message, 'Received the following response from account_api: {}'. format(self.error_msg)) self.assertEqual(context.exception.code, 'E709') self.assertEqual(context.exception.http_code, 500)
def test_get(self, mock_get): with app.app_context() as ac: ac.g.trace_id = None ac.g.requests = requests.Session() with app.test_request_context(): mock_get.return_value.json.return_value = 'Success' mock_get.return_value.status_code = 200 response = AccountAPI.get(self, '1234-567-890') self.assertEqual(response, 'Success')