<?xml version="1.0" encoding="UTF-8"?>
<!-- Test the bounding box calculated for two perpendicular lines of length 100px -->
<!-- If the bounding box is 100x100, we consider this test passing. -->
<svg xmlns="http://www.w3.org/2000/svg" onload="init()">
  <script type="text/javascript">
  <![CDATA[
    function init()
    {
        if (window.testRunner)
            testRunner.dumpAsText();
        var txt = document.getElementById("text");
        size = document.getElementById("shape").getBBox();
        var passState = "FAIL";
        if(size.width == 100 && size.height == 100)
            passState = "PASS";
        var textNode = document.createTextNode(size.width + " " + size.height + " " + passState);
        txt.appendChild(textNode);
    }
  ]]>
  </script>
  <g id="shape">
    <path stroke="#666666" stroke-width="2.0" stroke-linejoin="round" stroke-linecap="butt" d="M5 5L5 105" fill-rule="nonzero"></path>
    <path stroke="#666666" stroke-width="2.0" stroke-linejoin="round" stroke-linecap="butt" d="M5 5L105 5" fill-rule="nonzero"></path>
  </g>
  <text id="text" x="50" y="50" />
</svg>
