OLD | NEW |
| (Empty) |
1 description("This test checks the use of SVGAnimatedEnumeration within SVGGradie
ntElement"); | |
2 | |
3 var gradientElement = document.createElementNS("http://www.w3.org/2000/svg", "li
nearGradient"); | |
4 gradientElement.setAttribute("gradientUnits", "userSpaceOnUse"); | |
5 gradientElement.setAttribute("spreadMethod", "pad"); | |
6 | |
7 // gradientUnits | |
8 debug(""); | |
9 debug("Check initial 'gradientUnits' value"); | |
10 shouldBeEqualToString("gradientElement.gradientUnits.toString()", "[object SVGAn
imatedEnumeration]"); | |
11 shouldBeEqualToString("typeof(gradientElement.gradientUnits.baseVal)", "number")
; | |
12 shouldBe("gradientElement.gradientUnits.baseVal", "SVGUnitTypes.SVG_UNIT_TYPE_US
ERSPACEONUSE"); | |
13 | |
14 debug(""); | |
15 debug("Switch to 'objectBoundingBox'"); | |
16 shouldBe("gradientElement.gradientUnits.baseVal = SVGUnitTypes.SVG_UNIT_TYPE_OBJ
ECTBOUNDINGBOX", "SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBOUNDINGBOX"); | |
17 shouldBe("gradientElement.gradientUnits.baseVal", "SVGUnitTypes.SVG_UNIT_TYPE_OB
JECTBOUNDINGBOX"); | |
18 shouldBeEqualToString("gradientElement.getAttribute('gradientUnits')", "objectBo
undingBox"); | |
19 | |
20 debug(""); | |
21 debug("Try setting invalid values"); | |
22 shouldThrow("gradientElement.gradientUnits.baseVal = 3"); | |
23 shouldBe("gradientElement.gradientUnits.baseVal", "SVGUnitTypes.SVG_UNIT_TYPE_OB
JECTBOUNDINGBOX"); | |
24 shouldBeEqualToString("gradientElement.getAttribute('gradientUnits')", "objectBo
undingBox"); | |
25 | |
26 shouldThrow("gradientElement.gradientUnits.baseVal = -1"); | |
27 shouldBe("gradientElement.gradientUnits.baseVal", "SVGUnitTypes.SVG_UNIT_TYPE_OB
JECTBOUNDINGBOX"); | |
28 shouldBeEqualToString("gradientElement.getAttribute('gradientUnits')", "objectBo
undingBox"); | |
29 | |
30 shouldThrow("gradientElement.gradientUnits.baseVal = 0"); | |
31 shouldBe("gradientElement.gradientUnits.baseVal", "SVGUnitTypes.SVG_UNIT_TYPE_OB
JECTBOUNDINGBOX"); | |
32 shouldBeEqualToString("gradientElement.getAttribute('gradientUnits')", "objectBo
undingBox"); | |
33 | |
34 debug(""); | |
35 debug("Switch to 'userSpaceOnUse'"); | |
36 shouldBe("gradientElement.gradientUnits.baseVal = SVGUnitTypes.SVG_UNIT_TYPE_USE
RSPACEONUSE", "SVGUnitTypes.SVG_UNIT_TYPE_USERSPACEONUSE"); | |
37 shouldBe("gradientElement.gradientUnits.baseVal", "SVGUnitTypes.SVG_UNIT_TYPE_US
ERSPACEONUSE"); | |
38 shouldBeEqualToString("gradientElement.getAttribute('gradientUnits')", "userSpac
eOnUse"); | |
39 | |
40 // spreadMethod | |
41 debug(""); | |
42 debug("Check initial 'spreadMethod' value"); | |
43 shouldBeEqualToString("gradientElement.spreadMethod.toString()", "[object SVGAni
matedEnumeration]"); | |
44 shouldBeEqualToString("typeof(gradientElement.spreadMethod.baseVal)", "number"); | |
45 shouldBe("gradientElement.spreadMethod.baseVal", "SVGGradientElement.SVG_SPREADM
ETHOD_PAD"); | |
46 | |
47 debug(""); | |
48 debug("Switch to 'reflect' value"); | |
49 shouldBe("gradientElement.spreadMethod.baseVal = SVGGradientElement.SVG_SPREADME
THOD_REFLECT", "SVGGradientElement.SVG_SPREADMETHOD_REFLECT"); | |
50 shouldBe("gradientElement.spreadMethod.baseVal", "SVGGradientElement.SVG_SPREADM
ETHOD_REFLECT"); | |
51 shouldBeEqualToString("gradientElement.getAttribute('spreadMethod')", "reflect")
; | |
52 | |
53 debug(""); | |
54 debug("Switch to 'repeat' value"); | |
55 shouldBe("gradientElement.spreadMethod.baseVal = SVGGradientElement.SVG_SPREADME
THOD_REPEAT", "SVGGradientElement.SVG_SPREADMETHOD_REPEAT"); | |
56 shouldBe("gradientElement.spreadMethod.baseVal", "SVGGradientElement.SVG_SPREADM
ETHOD_REPEAT"); | |
57 shouldBeEqualToString("gradientElement.getAttribute('spreadMethod')", "repeat"); | |
58 | |
59 debug(""); | |
60 debug("Try setting invalid values"); | |
61 shouldThrow("gradientElement.spreadMethod.baseVal = 4"); | |
62 shouldBe("gradientElement.spreadMethod.baseVal", "SVGGradientElement.SVG_SPREADM
ETHOD_REPEAT"); | |
63 shouldBeEqualToString("gradientElement.getAttribute('spreadMethod')", "repeat"); | |
64 | |
65 shouldThrow("gradientElement.spreadMethod.baseVal = -1"); | |
66 shouldBe("gradientElement.spreadMethod.baseVal", "SVGGradientElement.SVG_SPREADM
ETHOD_REPEAT"); | |
67 shouldBeEqualToString("gradientElement.getAttribute('spreadMethod')", "repeat"); | |
68 | |
69 shouldThrow("gradientElement.spreadMethod.baseVal = 0"); | |
70 shouldBe("gradientElement.spreadMethod.baseVal", "SVGGradientElement.SVG_SPREADM
ETHOD_REPEAT"); | |
71 shouldBeEqualToString("gradientElement.getAttribute('spreadMethod')", "repeat"); | |
72 | |
73 debug(""); | |
74 debug("Switch to 'pad'"); | |
75 shouldBe("gradientElement.spreadMethod.baseVal = SVGGradientElement.SVG_SPREADME
THOD_PAD", "SVGGradientElement.SVG_SPREADMETHOD_PAD"); | |
76 shouldBe("gradientElement.spreadMethod.baseVal", "SVGGradientElement.SVG_SPREADM
ETHOD_PAD"); | |
77 shouldBeEqualToString("gradientElement.getAttribute('spreadMethod')", "pad"); | |
78 | |
79 successfullyParsed = true; | |
OLD | NEW |