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 |