This test checks the SVGAnimatedAngle API - utilizing the orientAngle property of SVGMarkerElement

On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".



Check initial orientAngle value
PASS markerElement.orientAngle.toString() is "[object SVGAnimatedAngle]"
PASS markerElement.orientAngle.baseVal.toString() is "[object SVGAngle]"
PASS markerElement.orientAngle.baseVal.value is 0

Check that angles are dynamic, caching value in a local variable and modifying it, should take effect
PASS numRef.value is 100
PASS markerElement.orientAngle.baseVal.value is 100

Check that assigning to baseVal has no effect, as no setter is defined
PASS markerElement.orientAngle.baseVal = -1 is -1
PASS markerElement.orientAngle.baseVal = 'aString' is "aString"
PASS markerElement.orientAngle.baseVal = markerElement is markerElement

Check that the orientAngle value remained 100, and the baseVal type has not been changed
PASS markerElement.orientAngle.baseVal.toString() is "[object SVGAngle]"
PASS markerElement.orientAngle.baseVal.value is 100
PASS successfullyParsed is true

TEST COMPLETE

