1 /* 2 * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved. 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 * 5 * This code is free software; you can redistribute it and/or modify it 6 * under the terms of the GNU General Public License version 2 only, as 7 * published by the Free Software Foundation. 8 * 9 * This code is distributed in the hope that it will be useful, but WITHOUT 10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 12 * version 2 for more details (a copy is included in the LICENSE file that 13 * accompanied this code). 14 * 15 * You should have received a copy of the GNU General Public License version 16 * 2 along with this work; if not, write to the Free Software Foundation, 17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 18 * 19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 20 * or visit www.oracle.com if you need additional information or have any 21 * questions. 22 */ 23 package javax.xml.transform.ptests; 24 25 import java.io.File; 26 import java.io.FileInputStream; 27 import javax.xml.parsers.DocumentBuilder; 28 import javax.xml.parsers.DocumentBuilderFactory; 29 import javax.xml.transform.Transformer; 30 import javax.xml.transform.TransformerConfigurationException; 31 import javax.xml.transform.TransformerFactory; 32 import javax.xml.transform.dom.DOMSource; 33 import static javax.xml.transform.ptests.TransformerTestConst.XML_DIR; 34 import javax.xml.transform.sax.SAXSource; 35 import javax.xml.transform.stream.StreamSource; 36 import jaxp.library.JAXPFileReadOnlyBaseTest; 37 import static org.testng.Assert.assertEquals; 38 import static org.testng.Assert.assertNull; 39 import org.testng.annotations.Test; 40 import org.w3c.dom.Document; 41 import org.w3c.dom.Node; 42 import org.xml.sax.InputSource; 43 44 /** 45 * Class containing the test cases for SAXParserFactory API 46 */ 47 public class TfClearParamTest extends JAXPFileReadOnlyBaseTest { 48 /** 49 * Test style-sheet file name. 50 */ 51 private final String XSL_FILE = XML_DIR + "cities.xsl"; 52 53 /** 54 * Long parameter name embedded with a URI. 55 */ 56 private final String LONG_PARAM_NAME = "{http://xyz.foo.com/yada/baz.html}foo"; 57 58 /** 59 * Short parameter name. 60 */ 61 private final String SHORT_PARAM_NAME = "foo"; 62 63 /** 64 * Parameter value. 65 */ 66 private final String PARAM_VALUE = "xyz"; 67 111 * Obtains transformer's parameter with a short name that set with an integer 112 * object before. Value should be same as the set integer object. 113 * @throws TransformerConfigurationException If for some reason the 114 * TransformerHandler can not be created. 115 */ 116 @Test 117 public void clear04() throws TransformerConfigurationException { 118 Transformer transformer = TransformerFactory.newInstance().newTransformer(); 119 120 int intObject = 5; 121 transformer.setParameter(SHORT_PARAM_NAME, intObject); 122 assertEquals(transformer.getParameter(SHORT_PARAM_NAME), intObject); 123 } 124 125 /** 126 * Obtains transformer's parameter whose initiated with a stream source with 127 * the a name that set before. Value should be same as set one. 128 * @throws TransformerConfigurationException If for some reason the 129 * TransformerHandler can not be created. 130 */ 131 @Test (groups = {"readLocalFiles"}) 132 public void clear05() throws TransformerConfigurationException { 133 Transformer transformer = TransformerFactory.newInstance(). 134 newTransformer(new StreamSource(new File(XSL_FILE))); 135 136 transformer.setParameter(LONG_PARAM_NAME, PARAM_VALUE); 137 assertEquals(transformer.getParameter(LONG_PARAM_NAME), PARAM_VALUE); 138 } 139 140 /** 141 * Obtains transformer's parameter whose initiated with a stream source with 142 * the a name that wasn't set before. Null is expected. 143 * @throws TransformerConfigurationException If for some reason the 144 * TransformerHandler can not be created. 145 */ 146 @Test (groups = {"readLocalFiles"}) 147 public void clear06() throws TransformerConfigurationException { 148 Transformer transformer = TransformerFactory.newInstance(). 149 newTransformer(new StreamSource(new File(XSL_FILE))); 150 transformer.setParameter(LONG_PARAM_NAME, PARAM_VALUE); 151 transformer.clearParameters(); 152 assertNull(transformer.getParameter(LONG_PARAM_NAME)); 153 } 154 155 /** 156 * Obtains transformer's parameter whose initiated with a sax source with 157 * the a name that set before. Value should be same as set one. 158 * @throws Exception If any errors occur. 159 */ 160 @Test (groups = {"readLocalFiles"}) 161 public void clear07() throws Exception { 162 try (FileInputStream fis = new FileInputStream(XSL_FILE)) { 163 SAXSource saxSource = new SAXSource(); 164 saxSource.setInputSource(new InputSource(fis)); 165 166 Transformer transformer = TransformerFactory.newInstance().newTransformer(saxSource); 167 transformer.setParameter(LONG_PARAM_NAME, PARAM_VALUE); 168 assertEquals(transformer.getParameter(LONG_PARAM_NAME), PARAM_VALUE); 169 } 170 } 171 172 /** 173 * Obtains transformer's parameter whose initiated with a sax source with 174 * the a name that wasn't set before. Null is expected. 175 * @throws Exception If any errors occur. 176 */ 177 @Test (groups = {"readLocalFiles"}) 178 public void clear08() throws Exception { 179 try (FileInputStream fis = new FileInputStream(XSL_FILE)) { 180 SAXSource saxSource = new SAXSource(); 181 saxSource.setInputSource(new InputSource(fis)); 182 183 Transformer transformer = TransformerFactory.newInstance().newTransformer(saxSource); 184 transformer.setParameter(LONG_PARAM_NAME, PARAM_VALUE); 185 transformer.clearParameters(); 186 assertNull(transformer.getParameter(LONG_PARAM_NAME)); 187 } 188 } 189 190 /** 191 * Obtains transformer's parameter whose initiated with a dom source with 192 * the a name that set before. Value should be same as set one. 193 * @throws Exception If any errors occur. 194 */ 195 @Test (groups = {"readLocalFiles"}) 196 public void clear09() throws Exception { 197 TransformerFactory tfactory = TransformerFactory.newInstance(); 198 199 DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); 200 dbf.setNamespaceAware(true); 201 DocumentBuilder db = dbf.newDocumentBuilder(); 202 Document document = db.parse(new File(XSL_FILE)); 203 DOMSource domSource = new DOMSource((Node)document); 204 205 Transformer transformer = tfactory.newTransformer(domSource); 206 207 transformer.setParameter(LONG_PARAM_NAME, PARAM_VALUE); 208 assertEquals(transformer.getParameter(LONG_PARAM_NAME), PARAM_VALUE); 209 } 210 211 /** 212 * Obtains transformer's parameter whose initiated with a dom source with 213 * the a name that wasn't set before. Null is expected. 214 * @throws Exception If any errors occur. 215 */ 216 @Test (groups = {"readLocalFiles"}) 217 public void clear10() throws Exception { 218 TransformerFactory tfactory = TransformerFactory.newInstance(); 219 220 DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); 221 dbf.setNamespaceAware(true); 222 DocumentBuilder db = dbf.newDocumentBuilder(); 223 Document document = db.parse(new File(XSL_FILE)); 224 DOMSource domSource = new DOMSource((Node)document); 225 226 Transformer transformer = tfactory.newTransformer(domSource); 227 transformer.setParameter(LONG_PARAM_NAME, PARAM_VALUE); 228 transformer.clearParameters(); 229 assertNull(transformer.getParameter(LONG_PARAM_NAME)); 230 } 231 } | 1 /* 2 * Copyright (c) 2003, 2016, Oracle and/or its affiliates. All rights reserved. 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 * 5 * This code is free software; you can redistribute it and/or modify it 6 * under the terms of the GNU General Public License version 2 only, as 7 * published by the Free Software Foundation. 8 * 9 * This code is distributed in the hope that it will be useful, but WITHOUT 10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 12 * version 2 for more details (a copy is included in the LICENSE file that 13 * accompanied this code). 14 * 15 * You should have received a copy of the GNU General Public License version 16 * 2 along with this work; if not, write to the Free Software Foundation, 17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 18 * 19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 20 * or visit www.oracle.com if you need additional information or have any 21 * questions. 22 */ 23 package javax.xml.transform.ptests; 24 25 import static javax.xml.transform.ptests.TransformerTestConst.XML_DIR; 26 import static org.testng.Assert.assertEquals; 27 import static org.testng.Assert.assertNull; 28 29 import java.io.File; 30 import java.io.FileInputStream; 31 32 import javax.xml.parsers.DocumentBuilder; 33 import javax.xml.parsers.DocumentBuilderFactory; 34 import javax.xml.transform.Transformer; 35 import javax.xml.transform.TransformerConfigurationException; 36 import javax.xml.transform.TransformerFactory; 37 import javax.xml.transform.dom.DOMSource; 38 import javax.xml.transform.sax.SAXSource; 39 import javax.xml.transform.stream.StreamSource; 40 41 import org.testng.annotations.Listeners; 42 import org.testng.annotations.Test; 43 import org.w3c.dom.Document; 44 import org.w3c.dom.Node; 45 import org.xml.sax.InputSource; 46 47 /** 48 * Class containing the test cases for SAXParserFactory API 49 */ 50 @Listeners({jaxp.library.FilePolicy.class}) 51 public class TfClearParamTest { 52 /** 53 * Test style-sheet file name. 54 */ 55 private final String XSL_FILE = XML_DIR + "cities.xsl"; 56 57 /** 58 * Long parameter name embedded with a URI. 59 */ 60 private final String LONG_PARAM_NAME = "{http://xyz.foo.com/yada/baz.html}foo"; 61 62 /** 63 * Short parameter name. 64 */ 65 private final String SHORT_PARAM_NAME = "foo"; 66 67 /** 68 * Parameter value. 69 */ 70 private final String PARAM_VALUE = "xyz"; 71 115 * Obtains transformer's parameter with a short name that set with an integer 116 * object before. Value should be same as the set integer object. 117 * @throws TransformerConfigurationException If for some reason the 118 * TransformerHandler can not be created. 119 */ 120 @Test 121 public void clear04() throws TransformerConfigurationException { 122 Transformer transformer = TransformerFactory.newInstance().newTransformer(); 123 124 int intObject = 5; 125 transformer.setParameter(SHORT_PARAM_NAME, intObject); 126 assertEquals(transformer.getParameter(SHORT_PARAM_NAME), intObject); 127 } 128 129 /** 130 * Obtains transformer's parameter whose initiated with a stream source with 131 * the a name that set before. Value should be same as set one. 132 * @throws TransformerConfigurationException If for some reason the 133 * TransformerHandler can not be created. 134 */ 135 @Test 136 public void clear05() throws TransformerConfigurationException { 137 Transformer transformer = TransformerFactory.newInstance(). 138 newTransformer(new StreamSource(new File(XSL_FILE))); 139 140 transformer.setParameter(LONG_PARAM_NAME, PARAM_VALUE); 141 assertEquals(transformer.getParameter(LONG_PARAM_NAME), PARAM_VALUE); 142 } 143 144 /** 145 * Obtains transformer's parameter whose initiated with a stream source with 146 * the a name that wasn't set before. Null is expected. 147 * @throws TransformerConfigurationException If for some reason the 148 * TransformerHandler can not be created. 149 */ 150 @Test 151 public void clear06() throws TransformerConfigurationException { 152 Transformer transformer = TransformerFactory.newInstance(). 153 newTransformer(new StreamSource(new File(XSL_FILE))); 154 transformer.setParameter(LONG_PARAM_NAME, PARAM_VALUE); 155 transformer.clearParameters(); 156 assertNull(transformer.getParameter(LONG_PARAM_NAME)); 157 } 158 159 /** 160 * Obtains transformer's parameter whose initiated with a sax source with 161 * the a name that set before. Value should be same as set one. 162 * @throws Exception If any errors occur. 163 */ 164 @Test 165 public void clear07() throws Exception { 166 try (FileInputStream fis = new FileInputStream(XSL_FILE)) { 167 SAXSource saxSource = new SAXSource(); 168 saxSource.setInputSource(new InputSource(fis)); 169 170 Transformer transformer = TransformerFactory.newInstance().newTransformer(saxSource); 171 transformer.setParameter(LONG_PARAM_NAME, PARAM_VALUE); 172 assertEquals(transformer.getParameter(LONG_PARAM_NAME), PARAM_VALUE); 173 } 174 } 175 176 /** 177 * Obtains transformer's parameter whose initiated with a sax source with 178 * the a name that wasn't set before. Null is expected. 179 * @throws Exception If any errors occur. 180 */ 181 @Test 182 public void clear08() throws Exception { 183 try (FileInputStream fis = new FileInputStream(XSL_FILE)) { 184 SAXSource saxSource = new SAXSource(); 185 saxSource.setInputSource(new InputSource(fis)); 186 187 Transformer transformer = TransformerFactory.newInstance().newTransformer(saxSource); 188 transformer.setParameter(LONG_PARAM_NAME, PARAM_VALUE); 189 transformer.clearParameters(); 190 assertNull(transformer.getParameter(LONG_PARAM_NAME)); 191 } 192 } 193 194 /** 195 * Obtains transformer's parameter whose initiated with a dom source with 196 * the a name that set before. Value should be same as set one. 197 * @throws Exception If any errors occur. 198 */ 199 @Test 200 public void clear09() throws Exception { 201 TransformerFactory tfactory = TransformerFactory.newInstance(); 202 203 DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); 204 dbf.setNamespaceAware(true); 205 DocumentBuilder db = dbf.newDocumentBuilder(); 206 Document document = db.parse(new File(XSL_FILE)); 207 DOMSource domSource = new DOMSource((Node)document); 208 209 Transformer transformer = tfactory.newTransformer(domSource); 210 211 transformer.setParameter(LONG_PARAM_NAME, PARAM_VALUE); 212 assertEquals(transformer.getParameter(LONG_PARAM_NAME), PARAM_VALUE); 213 } 214 215 /** 216 * Obtains transformer's parameter whose initiated with a dom source with 217 * the a name that wasn't set before. Null is expected. 218 * @throws Exception If any errors occur. 219 */ 220 @Test 221 public void clear10() throws Exception { 222 TransformerFactory tfactory = TransformerFactory.newInstance(); 223 224 DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); 225 dbf.setNamespaceAware(true); 226 DocumentBuilder db = dbf.newDocumentBuilder(); 227 Document document = db.parse(new File(XSL_FILE)); 228 DOMSource domSource = new DOMSource((Node)document); 229 230 Transformer transformer = tfactory.newTransformer(domSource); 231 transformer.setParameter(LONG_PARAM_NAME, PARAM_VALUE); 232 transformer.clearParameters(); 233 assertNull(transformer.getParameter(LONG_PARAM_NAME)); 234 } 235 } |