Chromium Code Reviews| Index: third_party/WebKit/LayoutTests/svg/dom/SVGLengthList-appendItem.html |
| diff --git a/third_party/WebKit/LayoutTests/svg/dom/SVGLengthList-appendItem.html b/third_party/WebKit/LayoutTests/svg/dom/SVGLengthList-appendItem.html |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..b0a2737205281200a72a41f5d46c882df804e4be |
| --- /dev/null |
| +++ b/third_party/WebKit/LayoutTests/svg/dom/SVGLengthList-appendItem.html |
| @@ -0,0 +1,118 @@ |
| +<!DOCTYPE HTML> |
| +<title>SVGLengthList Interface - appendItem()</title> |
|
fs
2016/09/14 15:14:35
Could make this "SVGLengthList.appendItem()" or "S
Shanmuga Pandi
2016/09/15 06:18:18
Done.
|
| +<script src="../../resources/testharness.js"></script> |
| +<script src="../../resources/testharnessreport.js"></script> |
| +<svg width="200" height="200"> |
| + <text id="text1" x="500 50 100 900 1000" y="50">ABC</text> |
|
fs
2016/09/14 15:14:35
Does this work out with not needing an expectation
Shanmuga Pandi
2016/09/15 06:18:18
It works. Will trigger CQ.
Shanmuga Pandi
2016/09/15 07:27:15
This passed the CQ dry run.
|
| + <text id="text2" x="50 100 1000" y="100">ABC</text> |
| +</svg> |
| +<script> |
| +test(function() { |
| + // This is a test of the SVGLengthList::appendItem() API. |
| + var svg = document.querySelector("svg"); |
| + var text1 = document.getElementById("text1"); |
| + var text2 = document.getElementById("text2"); |
| + |
| + // Create a new SVGLength object, with value=150. |
| + var newLength1 = svg.createSVGLength(); |
| + newLength1.value = 150; |
| + assert_equals(newLength1.value, 150); |
| + |
| + // Check initial list state of text1. |
| + assert_equals(text1.x.baseVal.numberOfItems, 5); |
|
fs
2016/09/14 15:14:35
I think we an cut down on the boilerplate a bit he
Shanmuga Pandi
2016/09/15 06:18:18
Done.
|
| + assert_equals(text1.x.baseVal.getItem(0).value, 500); |
| + assert_equals(text1.x.baseVal.getItem(1).value, 50); |
| + assert_equals(text1.x.baseVal.getItem(2).value, 100); |
| + assert_equals(text1.x.baseVal.getItem(3).value, 900); |
| + assert_equals(text1.x.baseVal.getItem(4).value, 1000); |
| + assert_throws("IndexSizeError", function() { text1.x.baseVal.getItem(5); }); |
| + |
| + // Check initial list state of text2. |
| + assert_equals(text2.x.baseVal.numberOfItems, 3); |
| + assert_equals(text2.x.baseVal.getItem(0).value, 50); |
| + assert_equals(text2.x.baseVal.getItem(1).value, 100); |
| + assert_equals(text2.x.baseVal.getItem(2).value, 1000); |
| + assert_throws("IndexSizeError", function() { text2.x.baseVal.getItem(3); }); |
| + |
| + // Append fourth item x=900 to the text1 x list. |
| + assert_equals(text1.x.baseVal.appendItem(text1.x.baseVal.getItem(3)).value, text1.x.baseVal.getItem(5).value); |
|
Srirama
2016/09/14 12:50:21
try using assert_object_equals instead of checking
Shanmuga Pandi
2016/09/14 13:28:17
assert_object_equals is not working for SVG TearOf
Srirama
2016/09/14 14:05:33
Acknowledged.
|
| + assert_equals(text1.x.baseVal.numberOfItems, 6); |
| + assert_equals(text1.x.baseVal.getItem(0).value, 500); |
| + assert_equals(text1.x.baseVal.getItem(1).value, 50); |
| + assert_equals(text1.x.baseVal.getItem(2).value, 100); |
| + assert_equals(text1.x.baseVal.getItem(3).value, 900); |
| + assert_equals(text1.x.baseVal.getItem(4).value, 1000); |
| + assert_equals(text1.x.baseVal.getItem(5).value, 900); |
| + assert_throws("IndexSizeError", function() { text1.x.baseVal.getItem(6); }); |
| + |
| + // Append first item x=500 to the text1 x list. |
| + assert_equals(text1.x.baseVal.appendItem(text1.x.baseVal.getItem(0)).value, text1.x.baseVal.getItem(6).value); |
|
Srirama
2016/09/14 12:50:21
ditto.
|
| + assert_equals(text1.x.baseVal.numberOfItems, 7); |
| + assert_equals(text1.x.baseVal.getItem(0).value, 500); |
| + assert_equals(text1.x.baseVal.getItem(1).value, 50); |
| + assert_equals(text1.x.baseVal.getItem(2).value, 100); |
| + assert_equals(text1.x.baseVal.getItem(3).value, 900); |
| + assert_equals(text1.x.baseVal.getItem(4).value, 1000); |
| + assert_equals(text1.x.baseVal.getItem(5).value, 900); |
| + assert_equals(text1.x.baseVal.getItem(6).value, 500); |
| + assert_throws("IndexSizeError", function() { text1.x.baseVal.getItem(7); }); |
| + |
| + // Append 'newLength1' to the text1 x list. |
| + assert_equals(text1.x.baseVal.appendItem(newLength1).value, text1.x.baseVal.getItem(7).value); |
|
Srirama
2016/09/14 12:50:21
same here as well and in all other places.
|
| + assert_equals(text1.x.baseVal.numberOfItems, 8); |
| + assert_equals(text1.x.baseVal.getItem(0).value, 500); |
| + assert_equals(text1.x.baseVal.getItem(1).value, 50); |
| + assert_equals(text1.x.baseVal.getItem(2).value, 100); |
| + assert_equals(text1.x.baseVal.getItem(3).value, 900); |
| + assert_equals(text1.x.baseVal.getItem(4).value, 1000); |
| + assert_equals(text1.x.baseVal.getItem(5).value, 900); |
| + assert_equals(text1.x.baseVal.getItem(6).value, 500); |
| + assert_equals(text1.x.baseVal.getItem(7).value, 150); |
| + assert_throws("IndexSizeError", function() { text1.x.baseVal.getItem(8); }); |
| + |
| + // Append third and fourth item of the text1 x list to the text2 x list. |
| + assert_equals(text2.x.baseVal.appendItem(text1.x.baseVal.getItem(2)).value, 100); |
| + assert_equals(text2.x.baseVal.appendItem(text1.x.baseVal.getItem(3)).value, 900); |
| + assert_equals(text1.x.baseVal.numberOfItems, 8); |
| + assert_equals(text1.x.baseVal.getItem(0).value, 500); |
| + assert_equals(text1.x.baseVal.getItem(1).value, 50); |
| + assert_equals(text1.x.baseVal.getItem(2).value, 100); |
| + assert_equals(text1.x.baseVal.getItem(3).value, 900); |
| + assert_equals(text1.x.baseVal.getItem(4).value, 1000); |
| + assert_equals(text1.x.baseVal.getItem(5).value, 900); |
| + assert_equals(text1.x.baseVal.getItem(6).value, 500); |
| + assert_equals(text1.x.baseVal.getItem(7).value, 150); |
| + assert_throws("IndexSizeError", function() { text1.x.baseVal.getItem(8); }); |
| + assert_equals(text2.x.baseVal.numberOfItems, 5); |
| + assert_equals(text2.x.baseVal.getItem(0).value, 50); |
| + assert_equals(text2.x.baseVal.getItem(1).value, 100); |
| + assert_equals(text2.x.baseVal.getItem(2).value, 1000); |
| + assert_equals(text2.x.baseVal.getItem(3).value, 100); |
| + assert_equals(text2.x.baseVal.getItem(4).value, 900); |
| + assert_throws("IndexSizeError", function() { text2.x.baseVal.getItem(5); }); |
| + |
| + var newLength2 = svg.createSVGLength(); |
| + newLength2.value = 150; |
| + assert_equals(newLength2.value, 150); |
| + text1.x.baseVal.clear(); |
| + |
| + // Shuffle around items in text1 and text2 list using appendItem, to get x=50,100,150,... in both lists. |
| + assert_equals(text1.x.baseVal.appendItem(text2.x.baseVal.getItem(0)).value, 50); |
| + assert_equals(text1.x.baseVal.appendItem(text2.x.baseVal.getItem(1)).value, 100); |
| + assert_equals(text1.x.baseVal.appendItem(newLength2).value, 150); |
| + text2.x.baseVal.clear(); |
| + assert_equals(text2.x.baseVal.appendItem(text1.x.baseVal.getItem(0)).value, 50); |
| + assert_equals(text2.x.baseVal.appendItem(text1.x.baseVal.getItem(1)).value, 100); |
| + assert_equals(text2.x.baseVal.appendItem(text1.x.baseVal.getItem(2)).value, 150); |
| + assert_equals(text1.x.baseVal.numberOfItems, 3); |
| + assert_equals(text1.x.baseVal.getItem(0).value, 50); |
| + assert_equals(text1.x.baseVal.getItem(1).value, 100); |
| + assert_equals(text1.x.baseVal.getItem(2).value, 150); |
| + assert_throws("IndexSizeError", function() { text1.x.baseVal.getItem(4); }); |
| + assert_equals(text2.x.baseVal.numberOfItems, 3); |
| + assert_equals(text2.x.baseVal.getItem(0).value, 50); |
| + assert_equals(text2.x.baseVal.getItem(1).value, 100); |
| + assert_equals(text2.x.baseVal.getItem(2).value, 150); |
| + assert_throws("IndexSizeError", function() { text2.x.baseVal.getItem(6); }); |
| +}); |
| +</script> |