@Override
protected void runTest()
throws Exception
{
String queryString = readQueryString();
Query query = prepareQuery(queryString);
if (query instanceof TupleQuery) {
TupleResult queryResult = ((TupleQuery)query).evaluate();
TupleResult expectedResult = readExpectedTupleQueryResult();
compareTupleQueryResults(queryResult, expectedResult);
// Graph queryGraph = RepositoryUtil.asGraph(queryResult);
// Graph expectedGraph = readExpectedTupleQueryResult();
// compareGraphs(queryGraph, expectedGraph);
}
else if (query instanceof GraphQuery) {
GraphResult gqr = ((GraphQuery)query).evaluate();
Set<Statement> queryResult = gqr.asSet();
Set<Statement> expectedResult = readExpectedGraphQueryResult();
compareGraphs(queryResult, expectedResult);
}
else if (query instanceof BooleanQuery) {
boolean queryResult = ((BooleanQuery)query).ask();
boolean expectedResult = readExpectedBooleanQueryResult();
assertEquals(expectedResult, queryResult);
}
else {
throw new RuntimeException("Unexpected query type: " + query.getClass());
}
}