@@ -156,4 +156,56 @@ public void transform() throws Exception {
156
156
157
157
loadPageVerifyTitle2 (createTestHTML (html ));
158
158
}
159
+
160
+ /**
161
+ * @throws Exception if the test fails
162
+ */
163
+ @ Test
164
+ @ Alerts (DEFAULT = "no ActiveX" ,
165
+ IE = {"preparation done" , "exception" })
166
+ public void testSecurity () throws Exception {
167
+ final String html = "<html><head>\n "
168
+ + "<script>\n "
169
+ + LOG_TITLE_FUNCTION
170
+ + " function test() {\n "
171
+ + ACTIVEX_CHECK
172
+ + " try {"
173
+ + " var xmlDoc = " + callLoadXMLDOMDocumentFromURL ("'" + URL_SECOND + "1'" ) + ";\n "
174
+ + " var xslDoc = new ActiveXObject('Msxml2.FreeThreadedDOMDocument.3.0');\n "
175
+ + " xslDoc.async = false;\n "
176
+ + " xslDoc.load('" + URL_SECOND + "2');\n "
177
+ + " var xslt = new ActiveXObject('Msxml2.XSLTemplate.3.0');\n "
178
+ + " xslt.stylesheet = xslDoc;\n "
179
+ + " var xslProc = xslt.createProcessor();\n "
180
+ + " xslProc.input = xmlDoc;\n "
181
+ + " log('preparation done');\n "
182
+ + " xslProc.transform();\n "
183
+ + " log(newxslProc.output);\n "
184
+ + " } catch(e) { log('exception'); }\n "
185
+ + " }\n "
186
+ + LOAD_XMLDOMDOCUMENT_FROM_URL_FUNCTION
187
+ + "</script></head>"
188
+ + "<body onload='test()'>\n "
189
+ + "</body></html>" ;
190
+
191
+ final String xml
192
+ = "<?xml version=\" 1.0\" encoding=\" ISO-8859-1\" ?>\n "
193
+ + "<s></s>" ;
194
+
195
+ final String xsl
196
+ = " <xsl:stylesheet version=\" 1.0\" xmlns:xsl=\" http://www.w3.org/1999/XSL/Transform\" "
197
+ + "xmlns:rt=\" http://xml.apache.org/xalan/java/java.lang.Runtime\" "
198
+ + "xmlns:ob=\" http://xml.apache.org/xalan/java/java.lang.Object\" >\r \n "
199
+ + " <xsl:template match='/'>\n "
200
+ + " <xsl:variable name='rtobject' select='rt:getRuntime()'/>\n "
201
+ + " <xsl:variable name=\" rtString\" select=\" ob:toString($rtobject)\" />\n "
202
+ + " <xsl:value-of select=\" $rtString\" />\n "
203
+ + " </xsl:template>\r \n "
204
+ + " </xsl:stylesheet>" ;
205
+
206
+ getMockWebConnection ().setResponse (new URL (URL_SECOND , "1" ), xml , MimeType .TEXT_XML );
207
+ getMockWebConnection ().setResponse (new URL (URL_SECOND , "2" ), xsl , MimeType .TEXT_XML );
208
+
209
+ loadPageVerifyTitle2 (html );
210
+ }
159
211
}
0 commit comments