| <!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 test checks the SVGAnimatedNumberList API - utilizing the rotate property of SVGTextElement"); |
| |
| var textElement = document.createElementNS("http://www.w3.org/2000/svg", "text"); |
| textElement.setAttribute("rotate", "50"); |
| |
| debug(""); |
| debug("Check initial rotate value"); |
| shouldBeEqualToString("textElement.rotate.toString()", "[object SVGAnimatedNumberList]"); |
| shouldBeEqualToString("textElement.rotate.baseVal.toString()", "[object SVGNumberList]"); |
| shouldBe("textElement.rotate.baseVal.getItem(0).value", "50"); |
| |
| debug(""); |
| debug("Check that number lists are dynamic, caching value in a local variable and modifying it, should take effect"); |
| var numRef = textElement.rotate.baseVal; |
| numRef.getItem(0).value = 100; |
| shouldBe("numRef.getItem(0).value", "100"); |
| shouldBe("textElement.rotate.baseVal.getItem(0).value", "100"); |
| |
| debug(""); |
| debug("Check that assigning to baseVal has no effect, as no setter is defined"); |
| shouldBe("textElement.rotate.baseVal = -1", "-1"); |
| shouldBeEqualToString("textElement.rotate.baseVal = 'aString'", "aString"); |
| shouldBe("textElement.rotate.baseVal = textElement", "textElement"); |
| |
| debug(""); |
| debug("Check that the rotate value remained 100, and the baseVal type has not been changed"); |
| shouldBeEqualToString("textElement.rotate.baseVal.toString()", "[object SVGNumberList]"); |
| shouldBe("textElement.rotate.baseVal.getItem(0).value", "100"); |
| |
| successfullyParsed = true; |
| </script> |
| <script src="../../resources/js-test-post.js"></script> |
| </body> |
| </html> |