<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<html>
<head>
<script src="../../resources/js-test-pre.js"></script>
</head>
<body>
<p id="description"></p>
<div id="console"></div>
<script>
description("This tests getPointAtLength of SVG path.");

var pathElement = document.createElementNS("http://www.w3.org/2000/svg", "path");

function pointAtLengthOfPath(string) {
    pathElement.setAttributeNS(null, "d", string);

    var point = pathElement.getPointAtLength(700);
    return "(" + Math.round(point.x) + ", " + Math.round(point.y) + ")";
}

shouldBe("pointAtLengthOfPath('M0,20 L400,20 L640,20')", "'(640, 20)'");
shouldBe("pointAtLengthOfPath('M0,20 L400,20 L640,20 z')", "'(580, 20)'");
shouldBe("pointAtLengthOfPath('M0,20 L400,20 z M 320,20 L640,20')", "'(100, 20)'");
shouldBe("pointAtLengthOfPath('M0,20 L20,40')", "'(20, 40)'");
shouldThrow("pathElement.getPointAtLength(Math.NaN)");
shouldThrow("pathElement.getPointAtLength()");
shouldThrow("pathElement.getPointAtLength(Math.Infinity)");
shouldThrow("pathElement.getPointAtLength('abc')");

var successfullyParsed = true;
</script>
<script src="../../resources/js-test-post.js"></script>
</body>
</html>
