blob: 558b52aabda27a783a5463950a9bd7ea9c712cef [file] [log] [blame]
// [Name] SVGMarkerElement-svgdom-setOrientToAngle-call.js
// [Expected rendering result] start & end markers are visible (and not rotated, compared to the other SVGMarkerElement* tests) - and a series of PASS messages
description("Tests dynamic updates of the SVGMarkerElement object by using it's 'setOrientToAngle' method")
createSVGTestCase();
var markerElement = createSVGElement("marker");
markerElement.setAttribute("id", "marker");
markerElement.setAttribute("viewBox", "0 0 10 10");
markerElement.setAttribute("markerWidth", "2");
markerElement.setAttribute("markerHeight", "2");
markerElement.setAttribute("refX", "5");
markerElement.setAttribute("refY", "5");
markerElement.setAttribute("markerUnits", "strokeWidth");
markerElement.setAttribute("orient", "auto");
var markerPathElement = createSVGElement("path");
markerPathElement.setAttribute("fill", "blue");
markerPathElement.setAttribute("d", "M 5 0 L 10 10 L 0 10 Z");
markerElement.appendChild(markerPathElement);
var defsElement = createSVGElement("defs");
defsElement.appendChild(markerElement);
rootSVGElement.appendChild(defsElement);
var pathElement = createSVGElement("path");
pathElement.setAttribute("fill", "none");
pathElement.setAttribute("stroke", "green");
pathElement.setAttribute("stroke-width", "10");
pathElement.setAttribute("marker-start", "url(#marker)");
pathElement.setAttribute("marker-end", "url(#marker)");
pathElement.setAttribute("d", "M 130 135 L 180 135 L 180 185");
rootSVGElement.appendChild(pathElement);
shouldBe("markerElement.orientType.baseVal", "SVGMarkerElement.SVG_MARKER_ORIENT_AUTO");
shouldBe("markerElement.orientAngle.baseVal.value", "0");
shouldThrow("markerElement.setOrientToAngle()");
shouldThrow("markerElement.setOrientToAngle(true)");
shouldThrow("markerElement.setOrientToAngle(2)");
shouldThrow("markerElement.setOrientToAngle('aString')");
shouldThrow("markerElement.setOrientToAngle(markerElement)");
function repaintTest() {
markerElement.setOrientToAngle(rootSVGElement.createSVGAngle());
shouldBe("markerElement.orientType.baseVal", "SVGMarkerElement.SVG_MARKER_ORIENT_ANGLE");
shouldBe("markerElement.orientAngle.baseVal.value", "0");
}
var successfullyParsed = true;