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

Side by Side Diff: third_party/WebKit/LayoutTests/svg/dom/SVGTransformList-basics.html

Issue 2362653002: Convert LayoutTests/svg/dom/SVGTransform*.html js-tests.js to testharness.js based tests (Closed)
Patch Set: Created 4 years, 3 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
OLDNEW
(Empty)
1 <!DOCTYPE HTML>
2 <title>SVGTransformList, basics</title>
3 <script src="../../resources/testharness.js"></script>
4 <script src="../../resources/testharnessreport.js"></script>
5 <script src="resources/SVGTransformList-helper.js"></script>
6 <svg width="200" height="200">
7 <circle cx="40" cy="40" r="40" fill="green" transform="scale(2, 2) translate (10 10)"/>
8 </svg>
9 <script>
10 test(function() {
fs 2016/09/22 11:43:20 I think it'd be better to have several (sub)test h
Shanmuga Pandi 2016/09/23 11:37:02 Added TODO.
11 // This is a test of the simple SVGTransformList API parts.
12
13 var svg = document.querySelector("svg");
14 var circle1 = document.querySelector("circle");
15 var transformList = circle1.transform.baseVal;
16
17 // Spec: The object referenced by animVal will always be distinct from the one referenced by baseVal, even when the attribute is not animated.
18 assert_not_equals(circle1.transform.baseVal, circle1.transform.animVal);
19
20 assert_equals(circle1.transform.baseVal.numberOfItems, 2);
21 assert_equals(circle1.transform.animVal.numberOfItems, 2);
22 assert_equals(transformList.getItem(0).toString(), "type=SVG_TRANSFORM_SCALE m atrix=[2.0 0.0 0.0 2.0 0.0 0.0]");
23 assert_equals(transformList.getItem(1).toString(), "type=SVG_TRANSFORM_TRANSLA TE matrix=[1.0 0.0 0.0 1.0 10.0 10.0]");
24
25 // Test uncommon arguments for initialize().
26 assert_throws(new TypeError(), function() { transformList.initialize(30); });
27 assert_throws(new TypeError(), function() { transformList.initialize('aString' ); });
28 assert_throws(new TypeError(), function() { transformList.initialize(circle1); });
29 assert_throws(new TypeError(), function() { transformList.initialize(null); }) ;
30
31 // Test uncommon arguments for getItem().
32 assert_throws("IndexSizeError", function() { transformList.getItem(30); });
33 assert_equals(transformList.getItem('aString').toString(), "type=SVG_TRANSFORM _SCALE matrix=[2.0 0.0 0.0 2.0 0.0 0.0]");
34 assert_equals(transformList.getItem(circle1).toString(), "type=SVG_TRANSFORM_S CALE matrix=[2.0 0.0 0.0 2.0 0.0 0.0]");
35 assert_equals(transformList.getItem(null).toString(), "type=SVG_TRANSFORM_SCAL E matrix=[2.0 0.0 0.0 2.0 0.0 0.0]");
36
37 // Test uncommon arguments for insertItemBefore().
38 assert_throws(new TypeError(), function() { transformList.insertItemBefore(30) ; });
39 assert_throws(new TypeError(), function() { transformList.insertItemBefore('aS tring'); });
40 assert_throws(new TypeError(), function() { transformList.insertItemBefore(cir cle1); });
41 assert_throws(new TypeError(), function() { transformList.insertItemBefore(nul l); });
42
43 assert_equals(transformList.insertItemBefore(transformList.getItem(1), 'aStrin g').toString(), "type=SVG_TRANSFORM_TRANSLATE matrix=[1.0 0.0 0.0 1.0 10.0 10.0] ");
44 assert_equals(transformList.numberOfItems, 3);
45 assert_equals(transformList.getItem(0).toString(), "type=SVG_TRANSFORM_TRANSLA TE matrix=[1.0 0.0 0.0 1.0 10.0 10.0]");
46 assert_equals(transformList.getItem(1).toString(), "type=SVG_TRANSFORM_SCALE m atrix=[2.0 0.0 0.0 2.0 0.0 0.0]");
47 assert_equals(transformList.getItem(2).toString(), "type=SVG_TRANSFORM_TRANSLA TE matrix=[1.0 0.0 0.0 1.0 10.0 10.0]");
48 assert_equals(circle1.getAttribute('transform'), "translate(10 10) scale(2 2) translate(10 10)");
49
50 assert_equals(transformList.insertItemBefore(transformList.getItem(1), circle1 ).toString(), "type=SVG_TRANSFORM_SCALE matrix=[2.0 0.0 0.0 2.0 0.0 0.0]");
51 assert_equals(transformList.numberOfItems, 4);
52 assert_equals(transformList.getItem(0).toString(), "type=SVG_TRANSFORM_SCALE m atrix=[2.0 0.0 0.0 2.0 0.0 0.0]");
53 assert_equals(transformList.getItem(1).toString(), "type=SVG_TRANSFORM_TRANSLA TE matrix=[1.0 0.0 0.0 1.0 10.0 10.0]");
54 assert_equals(transformList.getItem(2).toString(), "type=SVG_TRANSFORM_SCALE m atrix=[2.0 0.0 0.0 2.0 0.0 0.0]");
55 assert_equals(transformList.getItem(3).toString(), "type=SVG_TRANSFORM_TRANSLA TE matrix=[1.0 0.0 0.0 1.0 10.0 10.0]");
56 assert_equals(circle1.getAttribute('transform'), "scale(2 2) translate(10 10) scale(2 2) translate(10 10)");
57
58 assert_equals(transformList.insertItemBefore(transformList.getItem(1), null).t oString(), "type=SVG_TRANSFORM_TRANSLATE matrix=[1.0 0.0 0.0 1.0 10.0 10.0]");
59 assert_equals(transformList.numberOfItems, 5);
60 assert_equals(transformList.getItem(0).toString(), "type=SVG_TRANSFORM_TRANSLA TE matrix=[1.0 0.0 0.0 1.0 10.0 10.0]");
61 assert_equals(transformList.getItem(1).toString(), "type=SVG_TRANSFORM_SCALE m atrix=[2.0 0.0 0.0 2.0 0.0 0.0]");
62 assert_equals(transformList.getItem(2).toString(), "type=SVG_TRANSFORM_TRANSLA TE matrix=[1.0 0.0 0.0 1.0 10.0 10.0]");
63 assert_equals(transformList.getItem(3).toString(), "type=SVG_TRANSFORM_SCALE m atrix=[2.0 0.0 0.0 2.0 0.0 0.0]");
64 assert_equals(transformList.getItem(4).toString(), "type=SVG_TRANSFORM_TRANSLA TE matrix=[1.0 0.0 0.0 1.0 10.0 10.0]");
65 assert_equals(circle1.getAttribute('transform'), "translate(10 10) scale(2 2) translate(10 10) scale(2 2) translate(10 10)");
66
67 assert_equals(transformList.insertItemBefore(transformList.getItem(1), 0).toSt ring(), "type=SVG_TRANSFORM_SCALE matrix=[2.0 0.0 0.0 2.0 0.0 0.0]");
68 assert_equals(transformList.numberOfItems, 6);
69 assert_equals(transformList.getItem(0).toString(), "type=SVG_TRANSFORM_SCALE m atrix=[2.0 0.0 0.0 2.0 0.0 0.0]");
70 assert_equals(transformList.getItem(1).toString(), "type=SVG_TRANSFORM_TRANSLA TE matrix=[1.0 0.0 0.0 1.0 10.0 10.0]");
71 assert_equals(transformList.getItem(2).toString(), "type=SVG_TRANSFORM_SCALE m atrix=[2.0 0.0 0.0 2.0 0.0 0.0]");
72 assert_equals(transformList.getItem(3).toString(), "type=SVG_TRANSFORM_TRANSLA TE matrix=[1.0 0.0 0.0 1.0 10.0 10.0]");
73 assert_equals(transformList.getItem(4).toString(), "type=SVG_TRANSFORM_SCALE m atrix=[2.0 0.0 0.0 2.0 0.0 0.0]");
74 assert_equals(transformList.getItem(5).toString(), "type=SVG_TRANSFORM_TRANSLA TE matrix=[1.0 0.0 0.0 1.0 10.0 10.0]");
75 assert_equals(circle1.getAttribute('transform'), "scale(2 2) translate(10 10) scale(2 2) translate(10 10) scale(2 2) translate(10 10)");
76
77 assert_throws(new TypeError(), function() { transformList.insertItemBefore(30, 0); });
78 assert_throws(new TypeError(), function() { transformList.insertItemBefore('aS tring', 0); });
79 assert_throws(new TypeError(), function() { transformList.insertItemBefore(cir cle1, 0); });
80 assert_throws(new TypeError(), function() { transformList.insertItemBefore(nul l, 0); });
81
82 // Set transform='rotate(90) scale(2 2) translate(10 10) skewX(45)' for circle 1.
83 circle1.setAttribute('transform', 'rotate(90) scale(2 2) translate(10 10) skew X(45)');
84 assert_equals(transformList.numberOfItems, 4);
85 assert_equals(transformList.getItem(0).toString(), "type=SVG_TRANSFORM_ROTATE matrix=[0.0 1.0 -1.0 0.0 0.0 0.0]");
86 assert_equals(transformList.getItem(1).toString(), "type=SVG_TRANSFORM_SCALE m atrix=[2.0 0.0 0.0 2.0 0.0 0.0]");
87 assert_equals(transformList.getItem(2).toString(), "type=SVG_TRANSFORM_TRANSLA TE matrix=[1.0 0.0 0.0 1.0 10.0 10.0]");
88 assert_equals(transformList.getItem(3).toString(), "type=SVG_TRANSFORM_SKEWX m atrix=[1.0 0.0 1.0 1.0 0.0 0.0]");
89 assert_equals(circle1.getAttribute('transform'), "rotate(90) scale(2 2) transl ate(10 10) skewX(45)");
90
91 // Test uncommon arguments for replaceItem().
92 assert_throws(new TypeError(), function() { transformList.replaceItem(30); });
93 assert_throws(new TypeError(), function() { transformList.replaceItem('aString '); });
94 assert_throws(new TypeError(), function() { transformList.replaceItem(circle1) ; });
95 assert_throws(new TypeError(), function() { transformList.replaceItem(null); } );
96 assert_throws(new TypeError(), function() { transformList.replaceItem(30, 0); });
97 assert_throws(new TypeError(), function() { transformList.replaceItem('aString ', 0); });
98 assert_throws(new TypeError(), function() { transformList.replaceItem(circle1, 0); });
99 assert_throws(new TypeError(), function() { transformList.replaceItem(null, 0) ; });
100
101 // Test uncommon values for indexed setter.
102 assert_throws(new TypeError(), function() { transformList[0] = 30; });
103 assert_throws(new TypeError(), function() { transformList[0] = 'aString'; });
104 assert_throws(new TypeError(), function() { transformList[0] = circle1; });
105 assert_throws(new TypeError(), function() { transformList[0] = null; });
106
107 assert_equals(transformList.replaceItem(transformList.getItem(0), 0).toString( ), "type=SVG_TRANSFORM_ROTATE matrix=[0.0 1.0 -1.0 0.0 0.0 0.0]");
fs 2016/09/22 11:43:20 Here we are replacing the element with itself - fr
Shanmuga Pandi 2016/09/23 11:37:02 Done.
108 assert_equals(transformList.numberOfItems, 4);
109 assert_equals(transformList.getItem(0).toString(), "type=SVG_TRANSFORM_ROTATE matrix=[0.0 1.0 -1.0 0.0 0.0 0.0]");
110 assert_equals(transformList.getItem(1).toString(), "type=SVG_TRANSFORM_SCALE m atrix=[2.0 0.0 0.0 2.0 0.0 0.0]");
111 assert_equals(transformList.getItem(2).toString(), "type=SVG_TRANSFORM_TRANSLA TE matrix=[1.0 0.0 0.0 1.0 10.0 10.0]");
112 assert_equals(transformList.getItem(3).toString(), "type=SVG_TRANSFORM_SKEWX m atrix=[1.0 0.0 1.0 1.0 0.0 0.0]");
113 assert_equals(circle1.getAttribute('transform'), "rotate(90) scale(2 2) transl ate(10 10) skewX(45)");
114
115 assert_equals(transformList.replaceItem(transformList.getItem(0), 'aString').t oString(), "type=SVG_TRANSFORM_ROTATE matrix=[0.0 1.0 -1.0 0.0 0.0 0.0]");
116 assert_equals(transformList.numberOfItems, 4);
117 assert_equals(transformList.getItem(0).toString(), "type=SVG_TRANSFORM_ROTATE matrix=[0.0 1.0 -1.0 0.0 0.0 0.0]");
118 assert_equals(transformList.getItem(1).toString(), "type=SVG_TRANSFORM_SCALE m atrix=[2.0 0.0 0.0 2.0 0.0 0.0]");
119 assert_equals(transformList.getItem(2).toString(), "type=SVG_TRANSFORM_TRANSLA TE matrix=[1.0 0.0 0.0 1.0 10.0 10.0]");
120 assert_equals(transformList.getItem(3).toString(), "type=SVG_TRANSFORM_SKEWX m atrix=[1.0 0.0 1.0 1.0 0.0 0.0]");
121 assert_equals(circle1.getAttribute('transform'), "rotate(90) scale(2 2) transl ate(10 10) skewX(45)");
122
123 assert_equals(transformList.replaceItem(transformList.getItem(0), circle1).toS tring(), "type=SVG_TRANSFORM_ROTATE matrix=[0.0 1.0 -1.0 0.0 0.0 0.0]");
124 assert_equals(transformList.numberOfItems, 4);
125 assert_equals(transformList.getItem(0).toString(), "type=SVG_TRANSFORM_ROTATE matrix=[0.0 1.0 -1.0 0.0 0.0 0.0]");
126 assert_equals(transformList.getItem(1).toString(), "type=SVG_TRANSFORM_SCALE m atrix=[2.0 0.0 0.0 2.0 0.0 0.0]");
127 assert_equals(transformList.getItem(2).toString(), "type=SVG_TRANSFORM_TRANSLA TE matrix=[1.0 0.0 0.0 1.0 10.0 10.0]");
128 assert_equals(transformList.getItem(3).toString(), "type=SVG_TRANSFORM_SKEWX m atrix=[1.0 0.0 1.0 1.0 0.0 0.0]");
129 assert_equals(circle1.getAttribute('transform'), "rotate(90) scale(2 2) transl ate(10 10) skewX(45)");
130
131 assert_equals(transformList.replaceItem(transformList.getItem(0), null).toStri ng(), "type=SVG_TRANSFORM_ROTATE matrix=[0.0 1.0 -1.0 0.0 0.0 0.0]");
132 assert_equals(transformList.numberOfItems, 4);
133 assert_equals(circle1.getAttribute('transform'), "rotate(90) scale(2 2) transl ate(10 10) skewX(45)");
134
135 // Set transform='rotate(90) scale(2 2) translate(10 10) skewX(45)' for circle 1.
136 circle1.setAttribute('transform', 'rotate(90) scale(2 2) translate(10 10) skew X(45)');
137
138 // Test uncommon arguments for removeItem().
139 assert_throws("IndexSizeError", function() { transformList.removeItem(30); });
140
141 assert_equals(transformList.removeItem(0).toString(), "type=SVG_TRANSFORM_ROTA TE matrix=[0.0 1.0 -1.0 0.0 0.0 0.0]");
142 assert_equals(transformList.numberOfItems, 3);
143 assert_equals(transformList.getItem(0).toString(), "type=SVG_TRANSFORM_SCALE m atrix=[2.0 0.0 0.0 2.0 0.0 0.0]");
144 assert_equals(transformList.getItem(1).toString(), "type=SVG_TRANSFORM_TRANSLA TE matrix=[1.0 0.0 0.0 1.0 10.0 10.0]");
145 assert_equals(transformList.getItem(2).toString(), "type=SVG_TRANSFORM_SKEWX m atrix=[1.0 0.0 1.0 1.0 0.0 0.0]");
146 assert_equals(circle1.getAttribute('transform'), "scale(2 2) translate(10 10) skewX(45)");
147
148 assert_equals(transformList.removeItem('aString').toString(), "type=SVG_TRANSF ORM_SCALE matrix=[2.0 0.0 0.0 2.0 0.0 0.0]");
149 assert_equals(transformList.numberOfItems, 2);
150 assert_equals(transformList.getItem(0).toString(), "type=SVG_TRANSFORM_TRANSLA TE matrix=[1.0 0.0 0.0 1.0 10.0 10.0]");
151 assert_equals(transformList.getItem(1).toString(), "type=SVG_TRANSFORM_SKEWX m atrix=[1.0 0.0 1.0 1.0 0.0 0.0]");
152 assert_equals(circle1.getAttribute('transform'), "translate(10 10) skewX(45)") ;
153
154 assert_equals(transformList.removeItem(circle1).toString(), "type=SVG_TRANSFOR M_TRANSLATE matrix=[1.0 0.0 0.0 1.0 10.0 10.0]");
155 assert_equals(transformList.numberOfItems, 1);
156 assert_equals(transformList.getItem(0).toString(), "type=SVG_TRANSFORM_SKEWX m atrix=[1.0 0.0 1.0 1.0 0.0 0.0]");
157 assert_equals(circle1.getAttribute('transform'), "skewX(45)");
158
159 // Test uncommon arguments for appendItem().
160 assert_throws(new TypeError(), function() { transformList.appendItem(30); });
161 assert_throws(new TypeError(), function() { transformList.appendItem('aString' ); });
162 assert_throws(new TypeError(), function() { transformList.appendItem(circle1); });
163 assert_throws(new TypeError(), function() { transformList.appendItem(null); }) ;
164
165 // Testing animVal clear throws.
166 assert_throws("NoModificationAllowedError", function() { circle1.transform.ani mVal.clear(); });
167 transformList.clear();
168
169 // Creating new SVGTransform, with 45 deg rotation about x=50, y=100 and appen d it to the transform list.
170 var transform;
171 assert_equals((transform = svg.createSVGTransform()).toString(), "type=SVG_TRA NSFORM_MATRIX matrix=[1.0 0.0 0.0 1.0 0.0 0.0]");
fs 2016/09/22 11:43:20 Assign the transform outside the assert.
Shanmuga Pandi 2016/09/23 11:37:02 Done.
172 transform.setRotate(45, 50, 100);
173
174 assert_equals(transformList.appendItem(transform).toString(), "type=SVG_TRANSF ORM_ROTATE matrix=[0.7 0.7 -0.7 0.7 85.4 -6.1]");
175 assert_equals(transformList.numberOfItems, 1);
176 assert_equals(transformList.getItem(0).toString(), "type=SVG_TRANSFORM_ROTATE matrix=[0.7 0.7 -0.7 0.7 85.4 -6.1]");
177 assert_equals(circle1.getAttribute('transform'), "rotate(45 50 100)");
178 });
179 </script>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698