void printFailedResultSetTest( Query query, QueryExecution qe, ResultSetRewindable qrExpected, ResultSetRewindable qrActual) { PrintStream out = System.out; out.println(); out.println("======================================="); out.println("Failure: " + description()); out.println("Query: \n" + query); // if ( qe != null && qe.getDataset() != null ) // { // out.println("Data: \n"+qe.getDataset().asDatasetGraph()) ; // } out.println("Got: " + qrActual.size() + " --------------------------------"); qrActual.reset(); ResultSetFormatter.out(out, qrActual, query.getPrefixMapping()); qrActual.reset(); out.flush(); out.println("Expected: " + qrExpected.size() + " -----------------------------"); qrExpected.reset(); ResultSetFormatter.out(out, qrExpected, query.getPrefixMapping()); qrExpected.reset(); out.println(); out.flush(); }
public static void logResults(String name, ResultSetRewindable results) { if (log.isLoggable(Level.WARNING)) { log.warning(name + " (" + results.size() + ")"); results.reset(); ByteArrayOutputStream out = new ByteArrayOutputStream(); ResultSetFormatter.output(out, results, ResultsFormat.FMT_RDF_TTL); log.warning("\n" + out.toString()); } }
public static boolean assertEquals(ResultSet expectedResults, ResultSet computedResults) { ResultSetRewindable expected = ResultSetFactory.makeRewindable(expectedResults); ResultSetRewindable computed = ResultSetFactory.makeRewindable(computedResults); if (expected.size() != computed.size()) { logResults("Expected", expected); logResults("Real", computed); Assert.fail("Expected " + expected.size() + " but got " + computed.size()); } List<String> vars = expected.getResultVars(); Collection<Map<String, RDFNode>> results = results(computed); for (expected.reset(); expected.hasNext(); ) { QuerySolution qs = expected.nextSolution(); Map<String, RDFNode> map = solutionMap(qs, vars); if (!results.contains(map)) { logResults("Expected", expected); logResults("Real", computed); Assert.fail("Solution not found: " + map); Assert.fail("Expected " + expected.size() + " but got " + computed.size()); } } return true; }