| Index: LayoutTests/svg/dom/svglist-immutable.html
|
| diff --git a/LayoutTests/svg/dom/svglist-immutable.html b/LayoutTests/svg/dom/svglist-immutable.html
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..9cdba100ab2a93c87c72ab5ce923a182b2c8ccbe
|
| --- /dev/null
|
| +++ b/LayoutTests/svg/dom/svglist-immutable.html
|
| @@ -0,0 +1,41 @@
|
| +<!DOCTYPE html>
|
| +<title>SVG*List immutability</title>
|
| +<script src=../../resources/testharness.js></script>
|
| +<script src=../../resources/testharnessreport.js></script>
|
| +<script>
|
| +var root = document.createElementNS('http://www.w3.org/2000/svg', 'svg');
|
| +[
|
| + {
|
| + element: 'path', attr: 'd', value: 'M0,0l10,10', listName: 'SVGPathSegList',
|
| + accessor: function(elm) { return elm.animatedPathSegList; },
|
| + constructItem: function(elm) { return elm.createSVGPathSegLinetoAbs(20, 20); }
|
| + }, {
|
| + element: 'polygon', attr: 'points', value: '0,0 10,10', listName: 'SVGPointList',
|
| + accessor: function(elm) { return elm.animatedPoints; },
|
| + constructItem: function(elm) { return root.createSVGPoint(); }
|
| + }, {
|
| + element: 'text', attr: 'x', value: '0 10', listName: 'SVGLengthList',
|
| + accessor: function(elm) { return elm.x.animVal; },
|
| + constructItem: function(elm) { return root.createSVGLength(); }
|
| + }, {
|
| + element: 'rect', attr: 'transform', value: 'rotate(0) scale(1)', listName: 'SVGTransformList',
|
| + accessor: function(elm) { return elm.transform.animVal; },
|
| + constructItem: function(elm) { return root.createSVGTransform(); }
|
| + }
|
| +].forEach(function(testItem) {
|
| + var element = document.createElementNS('http://www.w3.org/2000/svg', testItem.element);
|
| + element.setAttribute(testItem.attr, testItem.value);
|
| + var list = testItem.accessor(element);
|
| + var item = testItem.constructItem(element);
|
| + test(function() {
|
| + assert_equals(list.length, 2);
|
| + assert_throws('NoModificationAllowedError', function() { list.clear(); });
|
| + assert_throws('NoModificationAllowedError', function() { list.initialize(item); });
|
| + assert_throws('NoModificationAllowedError', function() { list[0] = item; });
|
| + assert_throws('NoModificationAllowedError', function() { list.insertItemBefore(item, 0); });
|
| + assert_throws('NoModificationAllowedError', function() { list.replaceItem(item, 0); });
|
| + assert_throws('NoModificationAllowedError', function() { list.removeItem(0); });
|
| + assert_throws('NoModificationAllowedError', function() { list.appendItem(item); });
|
| + }, document.title + ', ' + testItem.listName);
|
| +});
|
| +</script>
|
|
|