protected void doTupleLinksAndStylesheetAndNamespaces(TupleQueryResultFormat format,
TupleQueryResult input, TupleQueryResult expected, List<String> links, String stylesheetUrl,
Map<String, String> namespaces)
throws QueryResultHandlerException, QueryEvaluationException, QueryResultParseException,
UnsupportedQueryResultFormatException, IOException
{
ByteArrayOutputStream out = new ByteArrayOutputStream(4096);
TupleQueryResultWriter writer = QueryResultIO.createTupleWriter(format, out);
for (String nextPrefix : namespaces.keySet()) {
writer.handleNamespace(nextPrefix, namespaces.get(nextPrefix));
}
writer.startDocument();
writer.handleStylesheet(stylesheetUrl);
writer.startHeader();
writer.handleLinks(links);
QueryResults.report(input, writer);
ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray());
TupleQueryResult output = QueryResultIO.parseTuple(in, format);
assertQueryResultsEqual(expected, output);
}