Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
'o5': self.build_get_parameter('o5', 'x5'),
'o6': self.build_get_parameter('o6', 'x6'),
'o7': self.build_get_parameter('o7', 'x7')
}
args = {
'o1': 'x1',
'o2': 'x2',
'o3': 'x3',
'o4': 'x4',
'o5': 'x5',
'o6': 'x6',
'o7': 'x7'
}
# Rewritten query will probably be incorrect because parameters are not
# carefully constructed, but that is not the scope of this test
rq_rw = gquery.rewrite_query(rq, parameters, args)
for pName, pValue in parameters.items():
self.assertIn(
pName, rq, 'Original query should contain original parameter name')
self.assertNotIn(
pName, rq_rw, 'Rewritten query should not contain original parameter name')
self.assertNotIn(
pValue['name'], rq, 'Original query should not contain replacement parameter value')
self.assertIn(
pValue['name'], rq_rw, 'Rewritten query should contain replacement parameter value')
return 'No SPARQL endpoint indicated', 407, {}
glogger.debug("=====================================================")
glogger.debug("Sending query to SPARQL endpoint: {}".format(endpoint))
glogger.debug("=====================================================")
query_metadata = gquery.get_metadata(raw_sparql_query, endpoint)
acceptHeader = 'application/json' if isinstance(raw_sparql_query, dict) else acceptHeader
pagination = query_metadata['pagination'] if 'pagination' in query_metadata else ""
rewritten_query = query_metadata['query']
# Rewrite query using parameter values
if query_metadata['type'] == 'SelectQuery' or query_metadata['type'] == 'ConstructQuery':
rewritten_query = gquery.rewrite_query(query_metadata['original_query'], query_metadata['parameters'], requestArgs)
# Rewrite query using pagination
if query_metadata['type'] == 'SelectQuery' and 'pagination' in query_metadata:
rewritten_query = gquery.paginate_query(rewritten_query, query_metadata['pagination'], requestArgs)
resp = None
headers = {}
# If we have a mime field, we load the remote dump and query it locally
if 'mime' in query_metadata and query_metadata['mime']:
glogger.debug(
"Detected {} MIME type, proceeding with locally loading remote dump".format(query_metadata['mime']))
g = Graph()
try:
query_metadata = gquery.get_metadata(raw_sparql_query, endpoint)
g.parse(endpoint, format=query_metadata['mime'])