chromium/third_party/blink/web_tests/svg/custom/use-on-use-with-child.svg

<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg11.dtd"> 
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> 
    <title id="viewer_title">Mouse Over the Red Dot And Wait For the Crash</title> 
    <defs> 
        <circle id="rim" cx="0" cy="0" r="70"/> 
        <g id="loupePlus"> 
            <use id="useRim" xlink:href="#rim" fill="#e33c31"> 
                <set />
            </use> 
        </g> 
    </defs> 

    <use id="zoomplus" xlink:href="#loupePlus" x="300" y="300" >
    </use> 
    <foreignObject><pre id="console" xmlns="http://www.w3.org/1999/xhtml"/></foreignObject>
    <script>
        function makeCrash(){
            if (window.eventSender) {
                eventSender.dragMode = false;
                eventSender.mouseMoveTo(300, 300);
                eventSender.mouseDown();
                eventSender.mouseUp();
            }
        }
        // If you like, you can make a crash.
        // makeCrash();

        var console = document.getElementById("console");
        function print(string)
        {
            console.textContent += string;
        }

        function printInstanceTree( obj, indent )
        {
            indent += "     ";
            print(indent);
            if (obj.id) { 
                print(" id = " + obj.id);
            }
            print(" this = " + obj + "\n");
            for (var m = obj.firstChild; m != null; m = m.nextSibling ) {
                printInstanceTree(m, indent);
            }
        }
        var zoomplus = document.getElementById("zoomplus");
        // Force a recalcStyle so the use shadow tree is created.
        getComputedStyle(zoomplus).color;
        var useobj = internals.shadowRoot(zoomplus);
        print("The instance tree of use element zoomplus:\n");
        printInstanceTree(useobj,"");

        if (window.testRunner){
            testRunner.dumpAsText();
        }

  </script>
</svg>