Move parseFontFaceDescriptor to CSSPropertyParser.cpp
[chromium-blink-merge.git] / third_party / WebKit / LayoutTests / svg / animations / script-tests / svglengthlist-animation-4.js
blob7ef4f36253bfb85f160e7a26e70f3ef23ab39839
1 description("Test 'by' animation of SVGLengthList.");
2 createSVGTestCase();
4 // Setup test document
5 var text = createSVGElement("text");
6 text.setAttribute("id", "text");
7 text.textContent = "ABCD";
8 text.setAttribute("x", "50 60 70 80");
9 text.setAttribute("y", "50");
10 text.setAttribute("onclick", "executeTest()");
11 rootSVGElement.appendChild(text);
13 var animate = createSVGElement("animate");
14 animate.setAttribute("id", "animation");
15 animate.setAttribute("attributeName", "x");
16 animate.setAttribute("begin", "click");
17 animate.setAttribute("dur", "4s");
18 animate.setAttribute("from", "50 60 70 80");
19 animate.setAttribute("by", "20 20 20 20");
20 text.appendChild(animate);
22 // Setup animation test
23 function sample1() {
24 shouldBe("text.x.animVal.numberOfItems", "4");
25 shouldBeCloseEnough("text.x.animVal.getItem(0).value", "50");
26 shouldBeCloseEnough("text.x.animVal.getItem(1).value", "60");
27 shouldBeCloseEnough("text.x.animVal.getItem(2).value", "70");
28 shouldBeCloseEnough("text.x.animVal.getItem(3).value", "80");
30 shouldBe("text.x.baseVal.numberOfItems", "4");
31 shouldBe("text.x.baseVal.getItem(0).value", "50");
32 shouldBe("text.x.baseVal.getItem(1).value", "60");
33 shouldBe("text.x.baseVal.getItem(2).value", "70");
34 shouldBe("text.x.baseVal.getItem(3).value", "80");
37 function sample2() {
38 shouldBe("text.x.animVal.numberOfItems", "4");
39 shouldBeCloseEnough("text.x.animVal.getItem(0).value", "60");
40 shouldBeCloseEnough("text.x.animVal.getItem(1).value", "70");
41 shouldBeCloseEnough("text.x.animVal.getItem(2).value", "80");
42 shouldBeCloseEnough("text.x.animVal.getItem(3).value", "90");
44 shouldBe("text.x.baseVal.numberOfItems", "4");
45 shouldBe("text.x.baseVal.getItem(0).value", "50");
46 shouldBe("text.x.baseVal.getItem(1).value", "60");
47 shouldBe("text.x.baseVal.getItem(2).value", "70");
48 shouldBe("text.x.baseVal.getItem(3).value", "80");
51 function sample3() {
52 shouldBe("text.x.animVal.numberOfItems", "4");
53 shouldBeCloseEnough("text.x.animVal.getItem(0).value", "70");
54 shouldBeCloseEnough("text.x.animVal.getItem(1).value", "80");
55 shouldBeCloseEnough("text.x.animVal.getItem(2).value", "90");
56 shouldBeCloseEnough("text.x.animVal.getItem(3).value", "100");
58 shouldBe("text.x.baseVal.numberOfItems", "4");
59 shouldBe("text.x.baseVal.getItem(0).value", "50");
60 shouldBe("text.x.baseVal.getItem(1).value", "60");
61 shouldBe("text.x.baseVal.getItem(2).value", "70");
62 shouldBe("text.x.baseVal.getItem(3).value", "80");
65 function executeTest() {
66 const expectedValues = [
67 // [animationId, time, sampleCallback]
68 ["animation", 0.0, sample1],
69 ["animation", 2.0, sample2],
70 ["animation", 3.999, sample3],
71 ["animation", 4.001, sample1]
74 runAnimationTest(expectedValues);
77 var successfullyParsed = true;