<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN" "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg xmlns="http://www.w3.org/2000/svg" onload="runTest()">

<script>
<![CDATA[
    function log(string) {
      var newDiv = document.createElementNS("http://www.w3.org/1999/xhtml", "div");
      newDiv.textContent = string;
      document.getElementById('log').appendChild(newDiv);
    }
    function runTest()
    {
        var rect = document.rootElement.lastChild.previousSibling;
        if (rect.getPresentationAttribute('fill').toString() != "[object SVGPaint]") {
            log("SVGPaint css property is not reported as of type SVGPaint");
            return;
        }
        var fill = rect.getPresentationAttribute('fill');
        fill.setRGBColor("green");
    }
    ]]>
</script>
This test tests that the type of the fill css attribute is correctly reported as SVGPaint.
See <a href="http://bugs.webkit.org/show_bug.cgi?id=14064">Bug 14064</a>.
<foreignObject>
    <html xmlns="http://www.w3.org/1999/xhtml">
        <div id="log">
This test tests that the type of the fill css attribute is correctly reported as SVGPaint.
See <a href="http://bugs.webkit.org/show_bug.cgi?id=14064">Bug 14064</a>.
        </div>
    </html>
</foreignObject>

    <rect x="10" y="50" width="100" height="100" fill="red" style="color:yellow" border-top="10"/>
</svg>
