layout/reftests/svg/conditions-06.svg

Wed, 31 Dec 2014 06:55:50 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Wed, 31 Dec 2014 06:55:50 +0100
changeset 2
7e26c7da4463
permissions
-rw-r--r--

Added tag UPSTREAM_283F7C6 for changeset ca08bd8f51b2

     1 <!--
     2      Any copyright is dedicated to the Public Domain.
     3      http://creativecommons.org/publicdomain/zero/1.0/
     4 -->
     5 <svg id="svg-root" width="100%" height="100%"
     6   xmlns="http://www.w3.org/2000/svg"
     7   xmlns:xlink="http://www.w3.org/1999/xlink" onload="runtest()">
     8   <title>Test conditional processing DOM interface</title>
     9   <defs>
    10     <script>
    11       function runtest() {
    12         try {
    13           var r1 = document.getElementById("r1");
    14           var r2 = document.getElementById("r2");
    15           var r3 = document.getElementById("r3");
    16           var i0 = r1.requiredFeatures.getItem(0);
    17           var i1 = r1.requiredFeatures.getItem(1);
    19           if(i0 != "http://www.w3.org/TR/SVG11/feature#Shape") {
    20             r1.removeAttribute("requiredFeatures");
    21             return;
    22           }
    23           if(i1 != "this.is.a.bogus.feature.string") {
    24             r1.removeAttribute("requiredFeatures");
    25             return;
    26           }
    27           if(r1.requiredFeatures.numberOfItems != 2) {
    28             r1.removeAttribute("requiredFeatures");
    29             return;
    30           }
    31           r2.requiredFeatures.appendItem(i1);
    32           if(r1.requiredFeatures.numberOfItems != 2) {
    33             r1.removeAttribute("requiredFeatures");
    34             return;
    35           }
    36           if(r2.requiredFeatures.numberOfItems != 1) {
    37             r1.removeAttribute("requiredFeatures");
    38             return;
    39           }
    40           r3.requiredFeatures.insertItemBefore(i0,0);
    41           if(r3.requiredFeatures.numberOfItems != 2) {
    42             r3.setAttribute("fill", "red");
    43             return;
    44           }
    45           if(r1.requiredFeatures.numberOfItems != 2) {
    46             r1.removeAttribute("requiredFeatures");
    47             return;
    48           }
    49         } catch(e) {
    50           var f = document.getElementById("fail");
    51           f.setAttribute("fill", "red");
    52         }
    53       }
    54     </script>
    55   </defs>
    57   <rect width="100%" height="100%" fill="lime"/>
    58   <!-- background images -->
    59   <rect x="100" y="100" width="100" height="100" fill="lime"/>
    60   <rect x="190" y="100" width="100" height="100" fill="lime"/>
    61   <rect x="300" y="100" width="100" height="100" fill="red"/>
    63   <!-- tests -->
    64   <rect id="r1" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Shape this.is.a.bogus.feature.string" x="100" y="100" width="100" height="100" fill="red"/>
    65   <rect id="r2" x="190" y="100" width="100" height="100" fill="red"/>
    66   <rect id="r3" x="300" y="100" width="100" height="100" fill="lime" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Shape"/>
    68   <rect id="fail" width="100%" height="100%" fill="none"/>
    69 </svg>

mercurial