Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(129)

Side by Side Diff: LayoutTests/fast/svg/svglist.html

Issue 195313003: [SVG2] Add getters and setters to SVG*List interfaces. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: s/slength/size Created 6 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | LayoutTests/fast/svg/svglist-expected.txt » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 <!doctype html>
2 <title>SVG*List array method tests</title>
3 <script src=../../resources/testharness.js></script>
4 <script src=../../resources/testharnessreport.js></script>
5 <div id="testcontainer"></div>
6 <div id=log></div>
7 <script>
8 function createSvg() {
9 document.getElementById("testcontainer").innerHTML = '<svg id="svg" width="1" height="1" visibility="hidden"><polygon id="polygon" points="10 10 450 212 24 10 3 45 32 62 42 123 52 62 52 57 72 12 548 85 12" visibility="hidden" systemLanguag e="sv, en, fr, de, zn, jp"/><path id="path" d="M 10 10 L 450 212 24 103 45 32 62 42 123 52 62 52 57 72 12 548 85 12" transform="scale(0.5) rotate(34) translate( 10 10)" visibility="hidden"/><text id="text" dx="10 10 450 212 24 103 45 32 62 4 2 123 52 62 52 57 72 12 548 85 12" rotate="10 66 2 23 546 54657 567 546 3 2 2 2 23" visibility="hidden"/></svg>';
10 }
11 setup(createSvg);
12 var svg = document.getElementById("svg");
13 var polygon = document.getElementById("polygon");
14 var path = document.getElementById("path");
15 var text = document.getElementById("text");
16 function createSVGPoint(x,y) {
17 var o;
18 try {
19 o = new SVGPoint(x,y);
20 }
21 catch(e) {
22 o = svg.createSVGPoint();
23 o.x = x;
24 o.y = y;
25 }
26 return o;
27 }
28 function createSVGLength(value) {
29 var o;
30 try {
31 o = new SVGLength(value);
32 }
33 catch(e) {
34 o = svg.createSVGLength();
35 o.value = value;
36 }
37 return o;
38 }
39 function createSVGNumber(value) {
40 var o;
41 try {
42 o = new SVGNumber(value);
43 }
44 catch(e) {
45 o = svg.createSVGNumber();
46 o.value = value;
47 }
48 return o;
49 }
50 function createSVGTransformTranslate(tx,ty) {
51 var o;
52 try {
53 o = new SVGTransform();
54 }
55 catch(e) {
56 o = svg.createSVGTransform();
57 }
58 o.setTranslate(tx, ty);
59 return o;
60 }
61 var lists = {
62 "SVGPointList" :
63 { "impl": polygon.points,
64 "type": "SVGPoint",
65 "length": 10,
66 "insert_value": createSVGPoint(5, 5),
67 "equals": function(a,b) { return a.x == b.x && a.y == b.y; }
68 },
69 "SVGStringList" :
70 { "impl": polygon.systemLanguage,
71 "type": "DOMString",
72 "length": 6,
73 "insert_value": "uk",
74 "equals": function(a,b) { return a == b; }
75 },
76 "SVGTransformList" :
77 { "impl": path.transform.baseVal,
78 "type": "SVGTransform",
79 "length": 3,
80 "insert_value": createSVGTransformTranslate(5,5),
81 "equals": function(a,b) { return a.matrix.a == b.matrix.a &&
82 a.matrix.b == b.matrix.b &&
83 a.matrix.c == b.matrix.c &&
84 a.matrix.d == b.matrix.d &&
85 a.matrix.e == b.matrix.e &&
86 a.matrix.f == b.matrix.f; }
87 },
88 "SVGPathSegList" :
89 { "impl": path.pathSegList,
90 "type": "SVGPathSegMovetoAbs",
91 "length": 10,
92 "insert_value": path.createSVGPathSegMovetoAbs(5,5),
93 "equals": function(a,b) { return a.x == b.x && a.y == b.y; }
94 },
95 "SVGLengthList" :
96 { "impl": text.dx.baseVal,
97 "type": "SVGLength",
98 "length": 20,
99 "insert_value": createSVGLength(5),
100 "equals": function(a,b) { return a.valueInSpecifiedUnits == b.valu eInSpecifiedUnits &&
101 a.unitType == b.unitType; }
102 },
103 "SVGNumberList" :
104 { "impl": text.rotate.baseVal,
105 "type": "SVGNumber",
106 "length": 13,
107 "insert_value": createSVGNumber(5),
108 "equals": function(a,b) { return a.value == b.value; }
109 }
110 };
111
112 for (list_type in lists) {
113 test(function() {
114 assert_idl_attribute(lists[list_type].impl, "length");
115 }, list_type + " has length attribute");
116 test(function() {
117 assert_idl_attribute(lists[list_type].impl, "numberOfItems");
118 }, list_type + " has numberOfItems attribute");
119 test(function() {
120 assert_equals(lists[list_type].impl.length, lists[list_type].impl.numb erOfItems);
121 assert_equals(lists[list_type].impl.length, lists[list_type].length);
122 }, list_type + ".length equals " + list_type + ".numberOfItems.");
123 test(function() {
124 assert_true(lists[list_type].equals(lists[list_type].impl.getIte m(0), lists[list_type].impl[0]));
125 }, list_type + " has array getter");
126 test(function() {
127 var old_value = lists[list_type].impl[0];
128 var new_value = lists[list_type].insert_value;
129 lists[list_type].impl[0] = lists[list_type].insert_value;
130 assert_false(lists[list_type].equals(old_value, new_value));
131 assert_true(lists[list_type].equals(lists[list_type].impl[0], ne w_value));
132 assert_equals(lists[list_type].impl.length, lists[list_type].length);
133 }, list_type + " has array setter");
134 }
135
136 </script>
OLDNEW
« no previous file with comments | « no previous file | LayoutTests/fast/svg/svglist-expected.txt » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698