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> |