<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" onload="reportLoadEvent(this);runTest();">
  <script>
    <![CDATA[
      if (window.testRunner)
        testRunner.dumpAsText();

      var results = new Array();

      function reportLoadEvent(el) {
        results.push(el.localName);
      }
      function runTest()
      {
        var test = document.getElementById("console");
        if ( results.length != 2 || results[0] != "image" ||
             results[1] != "svg") {
          test.appendChild(document.createTextNode("Failed"));
        } else {
          test.appendChild(document.createTextNode("Passed"));
        }
      }
    ]]>
  </script>
  <g onload="reportLoadEvent(this)">
    <image display="none" id="image" onload="reportLoadEvent(this)" width="100" height="100" xlink:href="resources/green-checker.png" />
    <text y="130" x="20">This tests normal load dispatching order and an image that does not render(display=none).</text>
    <text y="150" x="20" id="console" onload="reportLoadEvent(this)"/>
  </g>
</svg>
