<?xml version="1.0" encoding="UTF-8"?>
<svg xmlns="http://www.w3.org/2000/svg" onload="runTest()">
  <script type="text/ecmascript"><![CDATA[

    function expect(string, val) {
      var b = string == val;
      var message = (string + "") + " " +  (b ? "PASSED" : "FAILED (actual: '" + string + "' expected: '" + val + "')");
      var txt = document.createElementNS("http://www.w3.org/2000/svg", "text");
      var textNode = document.createTextNode(message);
      txt.appendChild(textNode);
      document.rootElement.appendChild(txt);
    }

    function runTest() {
      if (window.testRunner)
        testRunner.dumpAsText();

      var e = document.getElementById("rect");
      expect(e.style.getPropertyValue("marker"), 'url("#test")');
    }
  ]]></script>  
    <rect visibility="hidden" width="100" height="100" id="rect" style="marker: url(#test)"/>
</svg>
