in java/src/org/apache/qetest/trax/sax/TransformerHandlerAPITest.java [257:357]
public boolean testCase2()
{
reporter.testCaseInit("Basic functionality of TransformerHandler");
// Provide local copies of URLized filenames, so that we can
// later run tests with either Strings or URLs
String xslURI = QetestUtils.filenameToURL(testFileInfo.inputName);
String xmlURI = QetestUtils.filenameToURL(testFileInfo.xmlName);
String xslImpInclURI = QetestUtils.filenameToURL(impInclFileInfo.inputName);
String xmlImpInclURI = QetestUtils.filenameToURL(impInclFileInfo.xmlName);
TransformerFactory factory = null;
SAXTransformerFactory saxFactory = null;
TransformerHandler transformerHandler = null;
Transformer transformer = null;
try
{
factory = TransformerFactory.newInstance();
factory.setErrorListener(new DefaultErrorHandler());
saxFactory = (SAXTransformerFactory)factory;
// Validate an identity transformerHandler is valid
// and performs as an identity stylesheet
transformerHandler = saxFactory.newTransformerHandler();
transformer = transformerHandler.getTransformer();
transformer.setErrorListener(new DefaultErrorHandler());
reporter.check((transformer != null), true, "identity newTransformerHandler is non-null");
transformer.transform(new StreamSource(xmlURI), new StreamResult(outNames.nextName()));
int res = fileChecker.check(reporter,
new File(outNames.currentName()),
new File(testFileInfo.xmlName),
"identity newTransformerHandler transform into: " + outNames.currentName());
if (res == reporter.FAIL_RESULT)
reporter.logInfoMsg("identity newTransformerHandler transform failure reason:" + fileChecker.getExtendedInfo());
}
catch (Throwable t)
{
reporter.checkFail("Problem TransformerHandler(1)");
reporter.logThrowable(reporter.ERRORMSG, t,"Problem TransformerHandler(1)");
}
try
{
factory = TransformerFactory.newInstance();
factory.setErrorListener(new DefaultErrorHandler());
saxFactory = (SAXTransformerFactory)factory;
// Validate newTransformerHandler(Source) works
Source xslSource = new StreamSource(xslURI);
transformerHandler = saxFactory.newTransformerHandler(xslSource);
transformer = transformerHandler.getTransformer();
transformer.setErrorListener(new DefaultErrorHandler());
reporter.check((transformer != null), true, "newTransformerHandler(Source) is non-null");
transformer.transform(new StreamSource(xmlURI), new StreamResult(outNames.nextName()));
int res = fileChecker.check(reporter,
new File(outNames.currentName()),
new File(testFileInfo.goldName),
"newTransformerHandler(Source) transform into: " + outNames.currentName());
if (res == reporter.FAIL_RESULT)
reporter.logInfoMsg("newTransformerHandler(Source) transform failure reason:" + fileChecker.getExtendedInfo());
}
catch (Throwable t)
{
reporter.checkFail("Problem TransformerHandler(2)");
reporter.logThrowable(reporter.ERRORMSG, t,"Problem TransformerHandler(2)");
}
try
{
factory = TransformerFactory.newInstance();
factory.setErrorListener(new DefaultErrorHandler());
saxFactory = (SAXTransformerFactory)factory;
// Validate newTransformerHandler(Templates) works
Source xslSource = new StreamSource(xslURI);
Templates otherTemplates = factory.newTemplates(xslSource);
transformerHandler = saxFactory.newTransformerHandler(otherTemplates);
transformer = transformerHandler.getTransformer();
transformer.setErrorListener(new DefaultErrorHandler());
reporter.check((transformer != null), true, "newTransformerHandler(Templates) is non-null");
transformer.transform(new StreamSource(xmlURI), new StreamResult(outNames.nextName()));
int res = fileChecker.check(reporter,
new File(outNames.currentName()),
new File(testFileInfo.goldName),
"newTransformerHandler(Templates) transform into: " + outNames.currentName());
if (res == reporter.FAIL_RESULT)
reporter.logInfoMsg("newTransformerHandler(Templates) transform failure reason:" + fileChecker.getExtendedInfo());
}
catch (Throwable t)
{
reporter.checkFail("Problem TransformerHandler(3)");
reporter.logThrowable(reporter.ERRORMSG, t,"Problem TransformerHandler(3)");
}
reporter.logTraceMsg("//@todo validate newTransformerHandler.setResult functionality");
reporter.logTraceMsg("//@todo validate newTransformerHandler.set/getSystemId functionality");
reporter.testCaseClose();
return true;
}