def test_query_url(self): url, token = query_url_from_identifier( 'query:olap:48590200:21237:randomquerytoken', api_base=self.api_base) self.assertEqual( url, self.api_base + '/48590200/published_queries/21237/data.json') self.assertEqual(token, 'randomquerytoken')
def mock_erroneous_query(response_body, status): query_id = 'query:olap:48590200:21237:randomquerytoken' query_url, token = query_url_from_identifier(query_id, api_base) responses.add(responses.GET, query_url, body=response_body, status=status, content_type='application/json') query(query_id, api_base=api_base)
def query(query_id, parse_dates=True, use_column_names=True, api_base='https://api.contiamo.com'): http_client = HTTPClient() url, token = query_url_from_identifier(query_id, api_base) response = http_client.request( 'get', url, params={'resource_token': token}) try: json_response = response.json() except ValueError as e: # JSONDecodeError inherits from ValueError raise_response_error(e, response, logger) return parse_query_result(json_response, parse_dates=parse_dates, use_column_names=use_column_names)
def test_sql_query_url(self): url, token = query_url_from_identifier( 'query:sql:48590282:146:randomquerytoken', api_base=self.api_base) self.assertEqual( url, self.api_base + '/48590282/published_queries/146/data.json')