vhardy 02/05/14 01:29:23 Added: samples/tests/spec/scripting security3.svg security3Include.svg Log: Tests for upcoming security fix Revision Changes Path 1.1 xml-batik/samples/tests/spec/scripting/security3.svg Index: security3.svg =================================================================== <?xml version="1.0" standalone="no"?> <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN" "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd"> <!-- ========================================================================= --> <!-- Copyright (C) The Apache Software Foundation. All rights reserved. --> <!-- --> <!-- This software is published under the terms of the Apache Software License --> <!-- version 1.1, a copy of which has been included with this distribution in --> <!-- the LICENSE file. --> <!-- ========================================================================= --> <!-- ========================================================================= --> <!-- This test checks that scripts can properly invoke the Window object --> <!-- methods but that they cannot access data through getURL. --> <!-- --> <!-- @author [EMAIL PROTECTED] --> <!-- @version $Id: security3.svg,v 1.1 2002/05/14 08:29:23 vhardy Exp $ --> <!-- ========================================================================= --> <?xml-stylesheet type="text/css" href="../../resources/style/test.css" ?> <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="450" height="500" viewBox="0 0 450 500" onload="windowTest()"> <text x="225" y="30" class="title"> ECMA Script Secure Access to the Window Object </text> <style type="text/css"><![CDATA[ .cellLabel { fill: white; stroke: black; shape-rendering: crispEdges; } .cellStatus { stroke: black; fill: white; shape-rendering: crispEdges; } .label { font-size: 12; font-family: sans-serif; fill: black; text-anchor: start; } .passedTest { fill: rgb(0,200,50); stroke: none; shape-rendering: crispEdges; } .failedTest { fill: crimson; stroke: none; shape-rendering: crispEdges; } #table { stroke: black; } .untested { fill: gray; stroke: none; shapeRendering: crispEdges; } .tableCell { fill: none; stroke: black; shapeRendering: crispEdges; } ]]> </style> <script type="text/ecmascript" ><![CDATA[ function windowTest() { setIntervalTest(); setTimeoutTest(); getURLTest(); alertTest(); confirmTest(); promptTest(); } function dummyFunction() { System.out.println("===>> dummyFunction called"); } function setIntervalTest(){ var t = document.getElementById("setInterval"); var intervalId; try { intervalId = setInterval(dummyFunction, 10000); t.setAttributeNS(null, "class", "passedTest"); } catch (e) { t.setAttributeNS(null, "class", "failedTest"); return; // Cannot test clearInterval } t = document.getElementById("clearInterval"); try { window.clearInterval(intervalId); t.setAttributeNS(null, "class", "passedTest"); } catch (e) { System.out.println("Got exception : " + e); t.setAttributeNS(null, "class", "failedTest"); } } function setTimeoutTest(){ var t = document.getElementById("setTimeout"); var timeoutId = null; try { timeoutId = window.setTimeout(dummyFunction, 10000); t.setAttributeNS(null, "class", "passedTest"); } catch (e) { t.setAttributeNS(null, "class", "failedTest"); return; // Cannot test clearTimeout } t = document.getElementById("clearTimeout"); try { window.clearTimeout(timeoutId); t.setAttributeNS(null, "class", "passedTest"); } catch (e) { t.setAttributeNS(null, "class", "failedTest"); } } function getURLTest(){ var t = document.getElementById("getURL"); try { getURL("security3Include.svg", processGetURL); } catch (e) { t.setAttributeNS(null, "class", "failedTest"); return; } } function processGetURL(status){ var t = document.getElementById("getURL"); alert("status.success : " + status.success); if (status.success == false) { t.setAttributeNS(null, "class", "failedTest"); return; } t.setAttributeNS(null, "class", "passedTest"); t = document.getElementById("parseXML"); try { var root = parseXML(status.content, document); if (root == null){ t.setAttributeNS(null, "class", "failedTest"); } else { t.setAttributeNS(null, "class", "passedTest"); } } catch (e) { t.setAttributeNS(null, "class", "failedTest"); } } function dummyProcessGetURL(status){ } function alertTest(){ var t = document.getElementById("alert"); try { alert("alert() test"); t.setAttributeNS(null, "class", "passedTest"); } catch (e) { t.setAttributeNS(null, "class", "failedTest"); } } function confirmTest(){ var t = document.getElementById("confirm"); try { confirm("confirm() test"); t.setAttributeNS(null, "class", "passedTest"); } catch (e) { t.setAttributeNS(null, "class", "failedTest"); } } function promptTest(){ var t = document.getElementById("prompt"); try { prompt("prompt() test"); t.setAttributeNS(null, "class", "passedTest"); } catch (e) { t.setAttributeNS(null, "class", "failedTest"); } } ]]></script> <g id="testTable" transform="translate(125, 150)"> <g id="setIntervalTest"> <rect class="cellLabel" width="200" height="20" /> <rect class="cellStatus" x="200" width="20" height="20" /> <rect id="setInterval" class="untested" x="203" y="3" width="14" height="14" /> <text x="5" y="15" class="label">setInterval</text> </g> <g id="clearIntervalTest" transform="translate(0, 20)"> <rect class="cellLabel" width="200" height="20" /> <rect class="cellStatus" x="200" width="20" height="20" /> <rect id="clearInterval" class="untested" x="203" y="3" width="14" height="14" /> <text x="5" y="15" class="label">clearInterval</text> </g> <g id="setTimeoutTest" transform="translate(0, 40)"> <rect class="cellLabel" width="200" height="20" /> <rect class="cellStatus" x="200" width="20" height="20" /> <rect id="setTimeout" class="untested" x="203" y="3" width="14" height="14" /> <text x="5" y="15" class="label">setTimeout</text> </g> <g id="clearTimeoutTest" transform="translate(0, 60)"> <rect class="cellLabel" width="200" height="20" /> <rect class="cellStatus" x="200" width="20" height="20" /> <rect id="clearTimeout" class="untested" x="203" y="3" width="14" height="14" /> <text x="5" y="15" class="label">clearTimeout</text> </g> <g id="parseXMLTest" transform="translate(0, 80)"> <rect class="cellLabel" width="200" height="20" /> <rect class="cellStatus" x="200" width="20" height="20" /> <rect id="parseXML" class="untested" x="203" y="3" width="14" height="14" /> <text x="5" y="15" class="label">parseXML</text> </g> <g id="getURLTest" transform="translate(0, 100)"> <rect class="cellLabel" width="200" height="20" /> <rect class="cellStatus" x="200" width="20" height="20" /> <rect id="getURL" class="untested" x="203" y="3" width="14" height="14" /> <text x="5" y="15" class="label">getURL</text> </g> <g id="alertTest" transform="translate(0, 120)"> <rect class="cellLabel" width="200" height="20" /> <rect class="cellStatus" x="200" width="20" height="20" /> <rect id="alert" class="untested" x="203" y="3" width="14" height="14" /> <text x="5" y="15" class="label">alert</text> </g> <g id="confirmTest" transform="translate(0, 140)"> <rect class="cellLabel" width="200" height="20" /> <rect class="cellStatus" x="200" width="20" height="20" /> <rect id="confirm" class="untested" x="203" y="3" width="14" height="14" /> <text x="5" y="15" class="label">confirm</text> </g> <g id="promptTest" transform="translate(0, 160)"> <rect class="cellLabel" width="200" height="20" /> <rect class="cellStatus" x="200" width="20" height="20" /> <rect id="prompt" class="untested" x="203" y="3" width="14" height="14" /> <text x="5" y="15" class="label">prompt</text> </g> </g> </svg> 1.1 xml-batik/samples/tests/spec/scripting/security3Include.svg Index: security3Include.svg =================================================================== <?xml version="1.0" standalone="no"?> <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN" "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd"> <!-- ========================================================================= --> <!-- Copyright (C) The Apache Software Foundation. All rights reserved. --> <!-- --> <!-- This software is published under the terms of the Apache Software License --> <!-- version 1.1, a copy of which has been included with this distribution in --> <!-- the LICENSE file. --> <!-- ========================================================================= --> <!-- ========================================================================= --> <!-- The content of this file is included through scripting into security3.svg --> <!-- --> <!-- @author [EMAIL PROTECTED] --> <!-- @version $Id: security3Include.svg,v 1.1 2002/05/14 08:29:23 vhardy Exp $ --> <!-- ========================================================================= --> <?xml-stylesheet type="text/css" href="../../resources/style/test.css" ?> <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="450" height="500" viewBox="0 0 450 500"> <text transform="translate(225,250)" text-anchor="middle" font-size="20"> <tspan x="0" y="0">I was</tspan> <tspan x="0" y="1em">included with success</tspan> </text> </svg>
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]