<!--
     Any copyright is dedicated to the Public Domain.
     http://creativecommons.org/publicdomain/zero/1.0/
-->
<svg xmlns="http://www.w3.org/2000/svg"
     xmlns:xlink="http://www.w3.org/1999/xlink">

  <title>Testing that dynamic changes to the text element for a given ID are reflected in 'use'</title>

  <rect width="100%" height="100%" fill="lime"/>
  <text id="t1" x="100" y="100" fill="lime" style="font: 16px sans-serif">hello <tspan fill="red">there</tspan></text>
  <use y="100" xlink:href="#t1"/>

  <script>
    function doTest() {
      document.getElementsByTagName("tspan")[0].style.fill = "lime";
      document.documentElement.removeAttribute("class");
      if (window.testRunner)
        testRunner.notifyDone();
    }

    if (window.testRunner)
      testRunner.waitUntilDone();

    setTimeout(doTest, 100);
  </script>
</svg>
