| <!DOCTYPE html> |
| <html> |
| <script> |
| function check_rect_bbox(bbox, expected_bbox, test_name) |
| { |
| var result = true; |
| var result_str = ""; |
| |
| if (bbox.x == expected_bbox.x && bbox.y == expected_bbox.y && bbox.width == expected_bbox.width && bbox.height == expected_bbox.height) { |
| result_str = "Passed"; |
| } else { |
| result_str += test_name + ": Failed"; |
| result_str += "("+bbox.x+","+bbox.y+":"+bbox.width + "," + bbox.height+")"; |
| result = false; |
| } |
| |
| var p_result = document.querySelector("#result"); |
| p_result.appendChild(document.createTextNode(result_str + "; ")); |
| return result; |
| } |
| |
| function run() |
| { |
| if (window.testRunner) |
| testRunner.dumpAsText(); |
| |
| var p_bbox = document.querySelector("#p1").getBBox(); |
| var g_bbox = document.querySelector("g").getBBox(); |
| |
| var result = true; |
| |
| result &= check_rect_bbox(p_bbox, {"x":0, "y":0, "width":0, "height":0}, "getBBox on path with no d attribute") |
| result &= check_rect_bbox(g_bbox, document.querySelector("#r1").getBBox(),"path doesn't contribute to parent bbox") |
| |
| if (!result) { |
| var visible_rect = document.querySelector("#r1"); |
| visible_rect.setAttribute("fill", "red"); |
| } |
| } |
| </script> |
| |
| <body onload="run()"> |
| <p>Bug <a href="https://bugs.webkit.org/show_bug.cgi?id=134184">134184</a>: getBBox on path with no d attribute should return (0,0,0,0) and should not contribute to parent bbox</p> |
| <p>For this test to pass, you should see 'Passed' twice below.</a> |
| <p id="result"></p> |
| <svg xmlns="http://www.w3.org/2000/svg"> |
| <g> |
| <path id="p1" fill="none" stroke="red" /> |
| <rect id="r1" x="50" y="50" width="50" height="50" fill="green" /> |
| </g> |
| </svg> |
| </body> |
| </html> |