| OLD | NEW |
| (Empty) |
| 1 description("This test checks the SVGTransform API"); | |
| 2 | |
| 3 var svgElement = document.createElementNS("http://www.w3.org/2000/svg", "svg"); | |
| 4 var transform = svgElement.createSVGTransform(); | |
| 5 | |
| 6 debug(""); | |
| 7 debug("Check initial transform values"); | |
| 8 shouldBe("transform.type", "SVGTransform.SVG_TRANSFORM_MATRIX"); | |
| 9 shouldBe("transform.angle", "0"); | |
| 10 shouldBe("transform.matrix.a", "1"); | |
| 11 shouldBe("transform.matrix.b", "0"); | |
| 12 shouldBe("transform.matrix.c", "0"); | |
| 13 shouldBe("transform.matrix.d", "1"); | |
| 14 shouldBe("transform.matrix.e", "0"); | |
| 15 shouldBe("transform.matrix.f", "0"); | |
| 16 | |
| 17 debug(""); | |
| 18 debug("Change to skewX transformation"); | |
| 19 shouldBeUndefined("transform.setSkewX(45)"); | |
| 20 shouldBe("transform.type", "SVGTransform.SVG_TRANSFORM_SKEWX"); | |
| 21 shouldBe("transform.angle", "45"); | |
| 22 shouldBe("transform.matrix.a", "1"); | |
| 23 shouldBe("transform.matrix.b", "0"); | |
| 24 shouldBeEqualToString("transform.matrix.c.toFixed(1)", "1.0"); | |
| 25 shouldBe("transform.matrix.d", "1"); | |
| 26 shouldBe("transform.matrix.e", "0"); | |
| 27 shouldBe("transform.matrix.f", "0"); | |
| 28 | |
| 29 debug(""); | |
| 30 debug("Changing matrix.e to 100, should reset transformation type to MATRIX, and
angle should be 0"); | |
| 31 shouldBe("transform.matrix.e = 100", "100"); | |
| 32 shouldBe("transform.type", "SVGTransform.SVG_TRANSFORM_MATRIX"); | |
| 33 shouldBe("transform.angle", "0"); | |
| 34 shouldBe("transform.matrix.a", "1"); | |
| 35 shouldBe("transform.matrix.b", "0"); | |
| 36 shouldBeEqualToString("transform.matrix.c.toFixed(1)", "1.0"); | |
| 37 shouldBe("transform.matrix.d", "1"); | |
| 38 shouldBe("transform.matrix.e", "100"); | |
| 39 shouldBe("transform.matrix.f", "0"); | |
| 40 | |
| 41 debug(""); | |
| 42 debug("Now revert to initial matrix"); | |
| 43 shouldBeNull("transform.matrix.c = null"); | |
| 44 shouldBe("transform.matrix.e = 0", "0"); | |
| 45 shouldBe("transform.type", "SVGTransform.SVG_TRANSFORM_MATRIX"); | |
| 46 shouldBe("transform.angle", "0"); | |
| 47 shouldBe("transform.matrix.a", "1"); | |
| 48 shouldBe("transform.matrix.b", "0"); | |
| 49 shouldBe("transform.matrix.c", "0"); | |
| 50 shouldBe("transform.matrix.d", "1"); | |
| 51 shouldBe("transform.matrix.e", "0"); | |
| 52 shouldBe("transform.matrix.f", "0"); | |
| 53 | |
| 54 debug(""); | |
| 55 debug("Check passing invalid arguments to 'setMatrix'"); | |
| 56 shouldThrow("transform.setMatrix()"); | |
| 57 shouldThrow("transform.setMatrix(transform)"); | |
| 58 shouldThrow("transform.setMatrix(svgElement)"); | |
| 59 shouldThrow("transform.setMatrix('aString')"); | |
| 60 shouldThrow("transform.setMatrix(1)"); | |
| 61 shouldThrow("transform.setMatrix(false)"); | |
| 62 | |
| 63 debug(""); | |
| 64 debug("Check passing invalid arguments to 'setTranslate'"); | |
| 65 shouldThrow("transform.setTranslate()"); | |
| 66 shouldThrow("transform.setTranslate(transform)"); | |
| 67 shouldThrow("transform.setTranslate(svgElement)"); | |
| 68 shouldThrow("transform.setTranslate('aString')"); | |
| 69 shouldThrow("transform.setTranslate(1, transform)"); | |
| 70 shouldThrow("transform.setTranslate(1, svgElement)"); | |
| 71 shouldThrow("transform.setTranslate(1, 'aString')"); | |
| 72 shouldThrow("transform.setTranslate(transform, 1)"); | |
| 73 shouldThrow("transform.setTranslate(svgElement, 1)"); | |
| 74 shouldThrow("transform.setTranslate('aString', 1)"); | |
| 75 shouldThrow("transform.setTranslate(transform, transform)"); | |
| 76 shouldThrow("transform.setTranslate(svgElement, svgElement)"); | |
| 77 shouldThrow("transform.setTranslate('aString', 'aString')"); | |
| 78 shouldThrow("transform.setTranslate(NaN, 1)"); | |
| 79 shouldThrow("transform.setTranslate(Infinity, 1)"); | |
| 80 shouldThrow("transform.setTranslate(1, NaN)"); | |
| 81 shouldThrow("transform.setTranslate(1, Infinity)"); | |
| 82 | |
| 83 debug(""); | |
| 84 debug("Check passing invalid arguments to 'setScale'"); | |
| 85 shouldThrow("transform.setScale()"); | |
| 86 shouldThrow("transform.setScale(transform)"); | |
| 87 shouldThrow("transform.setScale(svgElement)"); | |
| 88 shouldThrow("transform.setScale('aString')"); | |
| 89 shouldThrow("transform.setScale(1, transform)"); | |
| 90 shouldThrow("transform.setScale(1, svgElement)"); | |
| 91 shouldThrow("transform.setScale(1, 'aString')"); | |
| 92 shouldThrow("transform.setScale(transform, 1)"); | |
| 93 shouldThrow("transform.setScale(svgElement, 1)"); | |
| 94 shouldThrow("transform.setScale('aString', 1)"); | |
| 95 shouldThrow("transform.setScale(transform, transform)"); | |
| 96 shouldThrow("transform.setScale(svgElement, svgElement)"); | |
| 97 shouldThrow("transform.setScale('aString', 'aString')"); | |
| 98 shouldThrow("transform.setScale(NaN, 1)"); | |
| 99 shouldThrow("transform.setScale(Infinity, 1)"); | |
| 100 shouldThrow("transform.setScale(1, NaN)"); | |
| 101 shouldThrow("transform.setScale(1, Infinity)"); | |
| 102 | |
| 103 debug(""); | |
| 104 debug("Check passing invalid arguments to 'setRotate'"); | |
| 105 shouldThrow("transform.setRotate()"); | |
| 106 shouldThrow("transform.setRotate(transform)"); | |
| 107 shouldThrow("transform.setRotate(svgElement)"); | |
| 108 shouldThrow("transform.setRotate('aString')"); | |
| 109 shouldThrow("transform.setRotate(1, transform)"); | |
| 110 shouldThrow("transform.setRotate(1, svgElement)"); | |
| 111 shouldThrow("transform.setRotate(1, 'aString')"); | |
| 112 shouldThrow("transform.setRotate(1, 1, transform)"); | |
| 113 shouldThrow("transform.setRotate(1, 1, svgElement)"); | |
| 114 shouldThrow("transform.setRotate(1, 1, 'aString')"); | |
| 115 shouldThrow("transform.setRotate(NaN, 1, 1)"); | |
| 116 shouldThrow("transform.setRotate(Infinity, 1, 1)"); | |
| 117 shouldThrow("transform.setRotate(1, NaN, 1)"); | |
| 118 shouldThrow("transform.setRotate(1, Infinity, 1)"); | |
| 119 shouldThrow("transform.setRotate(1, 1, NaN)"); | |
| 120 shouldThrow("transform.setRotate(1, 1, Infinity)"); | |
| 121 | |
| 122 debug(""); | |
| 123 debug("Check passing invalid arguments to 'setSkewX'"); | |
| 124 shouldThrow("transform.setSkewX()"); | |
| 125 shouldThrow("transform.setSkewX(transform)"); | |
| 126 shouldThrow("transform.setSkewX(svgElement)"); | |
| 127 shouldThrow("transform.setSkewX('aString')"); | |
| 128 shouldThrow("transform.setSkewX(NaN)"); | |
| 129 shouldThrow("transform.setSkewX(Infinity)"); | |
| 130 | |
| 131 debug(""); | |
| 132 debug("Check passing invalid arguments to 'setSkewY'"); | |
| 133 shouldThrow("transform.setSkewY()"); | |
| 134 shouldThrow("transform.setSkewY(transform)"); | |
| 135 shouldThrow("transform.setSkewY(svgElement)"); | |
| 136 shouldThrow("transform.setSkewY('aString')"); | |
| 137 shouldThrow("transform.setSkewY(NaN)"); | |
| 138 shouldThrow("transform.setSkewY(Infinity)"); | |
| 139 | |
| 140 successfullyParsed = true; | |
| OLD | NEW |