< prev index next >
test/javax/xml/jaxp/functional/javax/xml/transform/ptests/SAXTFactoryTest010.java
Print this page
@@ -21,23 +21,19 @@
* questions.
*/
package javax.xml.transform.ptests;
import java.io.IOException;
-import java.nio.file.Files;
-import java.nio.file.Path;
-import java.nio.file.Paths;
import javax.xml.transform.TransformerConfigurationException;
import javax.xml.transform.TransformerFactory;
import static javax.xml.transform.ptests.TransformerTestConst.CLASS_DIR;
import static javax.xml.transform.ptests.TransformerTestConst.GOLDEN_DIR;
import static javax.xml.transform.ptests.TransformerTestConst.XML_DIR;
import javax.xml.transform.sax.SAXTransformerFactory;
import javax.xml.transform.stream.StreamSource;
+import jaxp.library.JAXPFileBaseTest;
import static jaxp.library.JAXPTestUtilities.compareWithGold;
-import static jaxp.library.JAXPTestUtilities.failCleanup;
-import static jaxp.library.JAXPTestUtilities.failUnexpected;
import static org.testng.Assert.assertTrue;
import org.testng.annotations.Test;
import org.xml.sax.InputSource;
import org.xml.sax.SAXException;
import org.xml.sax.XMLFilter;
@@ -45,47 +41,40 @@
import org.xml.sax.helpers.XMLReaderFactory;
/**
* Test XMLFilter parse InputSource along with customized ContentHandler.
*/
-public class SAXTFactoryTest010 {
+public class SAXTFactoryTest010 extends JAXPFileBaseTest {
/**
* Unit test for contentHandler setter/getter along reader as handler's
* parent.
+ *
+ * @throws SAXException If any parse errors occur.
+ * @throws IOException if the file exists but is a directory rather than
+ * a regular file, does not exist but cannot be created, or cannot
+ * be opened for any other reason.
+ * @throws TransformerConfigurationException If for some reason the
+ * TransformerHandler can not be created.
*/
@Test
- public void testcase01() {
+ public void testcase01() throws TransformerConfigurationException,
+ SAXException, IOException {
String outputFile = CLASS_DIR + "saxtf010.out";
String goldFile = GOLDEN_DIR + "saxtf010GF.out";
String xsltFile = XML_DIR + "cities.xsl";
String xmlFile = XML_DIR + "cities.xml";
-
- try {
// The transformer will use a SAX parser as it's reader.
XMLReader reader = XMLReaderFactory.createXMLReader();
-
SAXTransformerFactory saxTFactory
= (SAXTransformerFactory)TransformerFactory.newInstance();
XMLFilter filter =
saxTFactory.newXMLFilter(new StreamSource(xsltFile));
-
filter.setParent(reader);
filter.setContentHandler(new MyContentHandler(outputFile));
// Now, when you call transformer.parse, it will set itself as
// the content handler for the parser object (it's "parent"), and
// will then call the parse method on the parser.
filter.parse(new InputSource(xmlFile));
assertTrue(compareWithGold(goldFile, outputFile));
- } catch (SAXException | IOException | TransformerConfigurationException ex) {
- failUnexpected(ex);
- } finally {
- try {
- Path outputPath = Paths.get(outputFile);
- if(Files.exists(outputPath))
- Files.delete(outputPath);
- } catch (IOException ex) {
- failCleanup(ex, outputFile);
- }
- }
}
}
< prev index next >