| Index: third_party/WebKit/LayoutTests/imported/web-platform-tests/web-animations/animation-node/animation-node-next-sibling.html
|
| diff --git a/third_party/WebKit/LayoutTests/imported/web-platform-tests/web-animations/animation-node/animation-node-next-sibling.html b/third_party/WebKit/LayoutTests/imported/web-platform-tests/web-animations/animation-node/animation-node-next-sibling.html
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..8a6b4a85ebb4ef1cc8465a805b7dd7d59e83bfcf
|
| --- /dev/null
|
| +++ b/third_party/WebKit/LayoutTests/imported/web-platform-tests/web-animations/animation-node/animation-node-next-sibling.html
|
| @@ -0,0 +1,503 @@
|
| +<!DOCTYPE html>
|
| +<meta charset=utf-8>
|
| +<title>AnimationNode nextSibling attribute tests</title>
|
| +<meta name="assert" content="The next sibling of this animation node">
|
| +<link rel="help" href="http://w3c.github.io/web-animations/#dom-animationnode-nextsibling">
|
| +<link rel="help" href="http://www.w3.org/TR/dom/#concept-tree-next-sibling">
|
| +<link rel="author" title="Sergey G. Grekhov" href="mailto:sgrekhov@unipro.ru">
|
| +<link rel="author" title="Aleksei Yu. Semenov" href="mailto:a.semenov@unipro.ru">
|
| +<script src="../../../../resources/testharness.js"></script>
|
| +<script src="../../../../resources/testharnessreport.js"></script>
|
| +<script src="../testcommon.js"></script>
|
| +<body>
|
| +<div id="log"></div>
|
| +<script>
|
| +test(function() {
|
| + var nodes = [newAnimation(createDiv(this)), new AnimationGroup([]), new AnimationSequence([])];
|
| + nodes.forEach(function(node) {
|
| + assert_equals(node.nextSibling, null, type(node) + '.nextSibling should be null');
|
| + });
|
| +}, 'AnimationNode.nextSibling is null if the node is standalone');
|
| +
|
| +test(function() {
|
| + var test = this;
|
| + var parents = [AnimationGroup, AnimationSequence];
|
| + parents.forEach(function(parentCtor) {
|
| + var nodes = [newAnimation(createDiv(test)), new AnimationGroup([]), new AnimationSequence([])];
|
| + nodes.forEach(function(node) {
|
| + var parent = new parentCtor([node]);
|
| +
|
| + assert_equals(node.nextSibling, null, type(node) + '.nextSibling ' +
|
| + 'should be null');
|
| + });
|
| + });
|
| +}, 'AnimationNode.nextSibling is null if the node is the only child of its parent');
|
| +
|
| +test(function() {
|
| + var test = this;
|
| + var parents = [AnimationGroup, AnimationSequence];
|
| + parents.forEach(function(parentCtor) {
|
| + var nodes = [newAnimation(createDiv(test)), new AnimationGroup([]), new AnimationSequence([])];
|
| + nodes.forEach(function(node1) {
|
| + var node2 = newAnimation(createDiv(test));
|
| + var parent = new parentCtor([node1, node2]);
|
| +
|
| + assert_equals(node1.nextSibling, node2, type(node1) + '.nextSibling should return ' +
|
| + 'next sibling of this animation node');
|
| + assert_equals(node2.nextSibling, null, type(node2) + '.nextSibling should be null');
|
| + });
|
| + });
|
| +}, 'AnimationNode.nextSibling returns next sibling of this animation node. Test first child');
|
| +
|
| +test(function() {
|
| + var test = this;
|
| + var parents = [AnimationGroup, AnimationSequence];
|
| + parents.forEach(function(parentCtor) {
|
| + var nodes = [newAnimation(createDiv(test)), new AnimationGroup([]), new AnimationSequence([])];
|
| + nodes.forEach(function(node2) {
|
| + var node1 = newAnimation(createDiv(test));
|
| + var parent = new parentCtor([node1, node2]);
|
| +
|
| + assert_equals(node1.nextSibling, node2, type(node1) + '.nextSibling should return ' +
|
| + 'next sibling of this animation node');
|
| + assert_equals(node2.nextSibling, null, type(node2) + '.nextSibling should be null');
|
| + });
|
| + });
|
| +}, 'AnimationNode.nextSibling returns next sibling of this animation node. Test second child');
|
| +
|
| +test(function() {
|
| + var node1 = newAnimation(createDiv(this));
|
| + var node2 = newAnimation(createDiv(this));
|
| + var node3 = newAnimation(createDiv(this));
|
| + var node4 = newAnimation(createDiv(this));
|
| + var node5 = newAnimation(createDiv(this));
|
| + var node6 = newAnimation(createDiv(this));
|
| + var node7 = new AnimationGroup([node3, node4]);
|
| + var node8 = new AnimationGroup([node5, node6]);
|
| + var node9 = newAnimation(createDiv(this));
|
| + var group = new AnimationGroup([node1, node2, node7, node8, node9]);
|
| +
|
| + assert_equals(group.nextSibling, null, 'AnimationNode.nextSibling should return ' +
|
| + 'null (root node)');
|
| + assert_equals(node1.nextSibling, node2, 'AnimationNode.nextSibling should return ' +
|
| + 'next sibling for the first node in the group');
|
| + assert_equals(node2.nextSibling, node7, 'AnimationNode.nextSibling should return ' +
|
| + 'next sibling of this animation node');
|
| + assert_equals(node3.nextSibling, node4, 'AnimationNode.nextSibling should return ' +
|
| + 'next sibling of this animation node (first node in the nested group)');
|
| + assert_equals(node4.nextSibling, null, 'AnimationNode.nextSibling should be null ' +
|
| + 'for the last node in the nested group');
|
| + assert_equals(node5.nextSibling, node6, 'AnimationNode.nextSibling should return ' +
|
| + 'next sibling of this animation node (first node in the second nested group)');
|
| + assert_equals(node6.nextSibling, null, 'AnimationNode.nextSibling should be null ' +
|
| + 'for the last node in the second nested group');
|
| + assert_equals(node7.nextSibling, node8, 'AnimationNode.nextSibling should return ' +
|
| + 'next sibling of this animation node (first nested group)');
|
| + assert_equals(node8.nextSibling, node9, 'AnimationNode.nextSibling should return ' +
|
| + 'next sibling of this animation node (second nested group)');
|
| + assert_equals(node9.nextSibling, null, 'AnimationNode.nextSibling should return ' +
|
| + 'null (the last node)');
|
| +}, 'AnimationNode.nextSibling returns next sibling of this animation node. Test ' +
|
| + 'tree structure with AnimationGroup');
|
| +
|
| +test(function() {
|
| + var node1 = newAnimation(createDiv(this));
|
| + var node2 = newAnimation(createDiv(this));
|
| + var node3 = newAnimation(createDiv(this));
|
| + var node4 = newAnimation(createDiv(this));
|
| + var node5 = newAnimation(createDiv(this));
|
| + var node6 = newAnimation(createDiv(this));
|
| + var node7 = new AnimationSequence([node3, node4]);
|
| + var node8 = new AnimationSequence([node5, node6]);
|
| + var node9 = newAnimation(createDiv(this));
|
| + var sequence = new AnimationSequence([node1, node2, node7, node8, node9]);
|
| +
|
| + assert_equals(sequence.nextSibling, null, 'AnimationNode.nextSibling should return ' +
|
| + 'null (root node)');
|
| + assert_equals(node1.nextSibling, node2, 'AnimationNode.nextSibling should return ' +
|
| + 'next sibling for the first node in the sequence');
|
| + assert_equals(node2.nextSibling, node7, 'AnimationNode.nextSibling should return ' +
|
| + 'next sibling of this animation node');
|
| + assert_equals(node3.nextSibling, node4, 'AnimationNode.nextSibling should return ' +
|
| + 'next sibling of this animation node (first node in the nested sequence)');
|
| + assert_equals(node4.nextSibling, null, 'AnimationNode.nextSibling should be null ' +
|
| + 'for the last node in the nested sequence');
|
| + assert_equals(node5.nextSibling, node6, 'AnimationNode.nextSibling should return ' +
|
| + 'next sibling of this animation node (first node in the second nested sequence)');
|
| + assert_equals(node6.nextSibling, null, 'AnimationNode.nextSibling should be null ' +
|
| + 'for the last node in the second nested sequence');
|
| + assert_equals(node7.nextSibling, node8, 'AnimationNode.nextSibling should return ' +
|
| + 'next sibling of this animation node (first nested sequence)');
|
| + assert_equals(node8.nextSibling, node9, 'AnimationNode.nextSibling should return ' +
|
| + 'next sibling of this animation node (second nested sequence)');
|
| + assert_equals(node9.nextSibling, null, 'AnimationNode.nextSibling should return ' +
|
| + 'null (the last node)');
|
| +}, 'AnimationNode.nextSibling returns next sibling of this animation node. Test ' +
|
| + 'tree structure with AnimationSequence');
|
| +
|
| +test(function() {
|
| + var test = this;
|
| + var parents = [AnimationGroup, AnimationSequence];
|
| + parents.forEach(function(parentCtor) {
|
| + var nodes = [newAnimation(createDiv(test)), new AnimationGroup([]), new AnimationSequence([])];
|
| + nodes.forEach(function(node2) {
|
| + var node1 = newAnimation(createDiv(test));
|
| + var node3 = newAnimation(createDiv(test));
|
| + var parent = new parentCtor([node1, node2]);
|
| + node2.before(node3);
|
| +
|
| + assert_equals(node1.nextSibling, node3, type(node2) + '.before() should update ' +
|
| + 'next sibling of animation node');
|
| + assert_equals(node3.nextSibling, node2, type(node2) + '.before() should update ' +
|
| + 'next sibling of animation node');
|
| + assert_equals(node2.nextSibling, null, type(node2) + '.before() should update ' +
|
| + 'next sibling of animation node');
|
| + });
|
| + });
|
| +}, 'AnimationNode.nextSibling returns next sibling of this animation node, ' +
|
| + 'the next sibling is changed by method before()');
|
| +
|
| +test(function() {
|
| + var test = this;
|
| + var parents = [AnimationGroup, AnimationSequence];
|
| + parents.forEach(function(parentCtor) {
|
| + var nodes = [newAnimation(createDiv(test)), new AnimationGroup([]), new AnimationSequence([])];
|
| + nodes.forEach(function(node3) {
|
| + var node1 = newAnimation(createDiv(test));
|
| + var node2 = newAnimation(createDiv(test));
|
| + var parent1 = new parentCtor([node1, node2]);
|
| + var parent2 = new parentCtor([node3]);
|
| +
|
| + node3.before(node2);
|
| +
|
| + assert_equals(node1.nextSibling, null, type(node3) + '.before() should update ' +
|
| + 'next sibling of animation node');
|
| + assert_equals(node2.nextSibling, node3, type(node3) + '.before() should update ' +
|
| + 'next sibling of animation node');
|
| + });
|
| + });
|
| +}, 'AnimationNode.nextSibling returns next sibling of this animation node, ' +
|
| + 'the next sibling is removed by method before()');
|
| +
|
| +test(function() {
|
| + var test = this;
|
| + var parents = [AnimationGroup, AnimationSequence];
|
| + parents.forEach(function(parentCtor) {
|
| + var nodes = [newAnimation(createDiv(test)), new AnimationGroup([]), new AnimationSequence([])];
|
| + nodes.forEach(function(node2) {
|
| + var node1 = newAnimation(createDiv(test));
|
| + var node3 = newAnimation(createDiv(test));
|
| + var node4 = new AnimationGroup([]);
|
| + var node5 = new AnimationSequence([]);
|
| + var parent = new parentCtor([node1, node2]);
|
| + node2.before(node3, node4, node5);
|
| +
|
| + assert_equals(node1.nextSibling, node3, type(node2) + '.before() should update ' +
|
| + 'next sibling of animation node');
|
| + assert_equals(node3.nextSibling, node4, type(node2) + '.before() should update ' +
|
| + 'next sibling of animation node');
|
| + assert_equals(node4.nextSibling, node5, type(node2) + '.before() should update ' +
|
| + 'next sibling of animation node');
|
| + assert_equals(node5.nextSibling, node2, type(node2) + '.before() should update ' +
|
| + 'next sibling of animation node');
|
| + assert_equals(node2.nextSibling, null, type(node2) + '.before() should update ' +
|
| + 'next sibling of animation node');
|
| + });
|
| + });
|
| +}, 'AnimationNode.nextSibling returns next sibling of this animation node, ' +
|
| + 'several nodes are added by method before()');
|
| +
|
| +test(function() {
|
| + var test = this;
|
| + var parents = [AnimationGroup, AnimationSequence];
|
| + parents.forEach(function(parentCtor) {
|
| + var nodes = [newAnimation(createDiv(test)), new AnimationGroup([]), new AnimationSequence([])];
|
| + nodes.forEach(function(node1) {
|
| + var node2 = newAnimation(createDiv(test));
|
| + var node3 = newAnimation(createDiv(test));
|
| + var parent = new parentCtor([node1, node2]);
|
| + node1.after(node3);
|
| +
|
| + assert_equals(node1.nextSibling, node3, type(node1) + '.after() should update ' +
|
| + 'next sibling of animation node');
|
| + assert_equals(node3.nextSibling, node2, type(node1) + '.after() should update ' +
|
| + 'next sibling of animation node');
|
| + assert_equals(node2.nextSibling, null, type(node1) + '.after() should update ' +
|
| + 'next sibling of animation node');
|
| + });
|
| + });
|
| +}, 'AnimationNode.nextSibling returns next sibling of this animation node, ' +
|
| + 'the next sibling is changed by method after()');
|
| +
|
| +test(function() {
|
| + var test = this;
|
| + var parents = [AnimationGroup, AnimationSequence];
|
| + parents.forEach(function(parentCtor) {
|
| + var nodes = [newAnimation(createDiv(test)), new AnimationGroup([]), new AnimationSequence([])];
|
| + nodes.forEach(function(node3) {
|
| + var node1 = newAnimation(createDiv(test));
|
| + var node2 = newAnimation(createDiv(test));
|
| + var parent1 = new parentCtor([node1, node2]);
|
| + var parent2 = new parentCtor([node3]);
|
| +
|
| + node3.after(node2);
|
| +
|
| + assert_equals(node1.nextSibling, null, type(node3) + '.after() should update ' +
|
| + 'next sibling of animation node');
|
| + assert_equals(node3.nextSibling, node2, type(node3) + '.after() should update ' +
|
| + 'next sibling of animation node');
|
| + });
|
| + });
|
| +}, 'AnimationNode.nextSibling returns next sibling of this animation node, ' +
|
| + 'the next sibling is removed by method after()');
|
| +
|
| +test(function() {
|
| + var test = this;
|
| + var parents = [AnimationGroup, AnimationSequence];
|
| + parents.forEach(function(parentCtor) {
|
| + var nodes = [newAnimation(createDiv(test)), new AnimationGroup([]), new AnimationSequence([])];
|
| + nodes.forEach(function(node1) {
|
| + var node2 = newAnimation(createDiv(test));
|
| + var node3 = newAnimation(createDiv(test));
|
| + var node4 = new AnimationGroup([]);
|
| + var node5 = new AnimationSequence([]);
|
| + var parent = new parentCtor([node1, node2]);
|
| + node1.after(node3, node4, node5);
|
| +
|
| + assert_equals(node1.nextSibling, node3, type(node1) + '.after() should update ' +
|
| + 'next sibling of animation node');
|
| + assert_equals(node3.nextSibling, node4, type(node1) + '.after() should update ' +
|
| + 'next sibling of animation node');
|
| + assert_equals(node4.nextSibling, node5, type(node1) + '.after() should update ' +
|
| + 'next sibling of animation node');
|
| + assert_equals(node5.nextSibling, node2, type(node1) + '.after() should update ' +
|
| + 'next sibling of animation node');
|
| + assert_equals(node2.nextSibling, null, type(node1) + '.after() should update ' +
|
| + 'next sibling of animation node');
|
| + });
|
| + });
|
| +}, 'AnimationNode.nextSibling returns next sibling of this animation node, ' +
|
| + 'several nodes are added by method after()');
|
| +
|
| +test(function() {
|
| + var test = this;
|
| + var parents = [AnimationGroup, AnimationSequence];
|
| + parents.forEach(function(parentCtor) {
|
| + var nodes = [newAnimation(createDiv(test)), new AnimationGroup([]), new AnimationSequence([])];
|
| + nodes.forEach(function(node2) {
|
| + var node1 = newAnimation(createDiv(test));
|
| + var node3 = newAnimation(createDiv(test));
|
| + var node4 = newAnimation(createDiv(test));
|
| + var parent = new parentCtor([node1, node2, node3]);
|
| + node2.replace(node4);
|
| +
|
| + assert_equals(node1.nextSibling, node4, type(node2) + '.replace() should update ' +
|
| + 'next sibling of animation node');
|
| + assert_equals(node4.nextSibling, node3, type(node2) + '.replace() should update ' +
|
| + 'next sibling of animation node');
|
| + assert_equals(node2.nextSibling, null, type(node2) + '.replace() should update ' +
|
| + 'next sibling of animation node');
|
| + });
|
| + });
|
| +}, 'AnimationNode.nextSibling returns next sibling of this animation node, ' +
|
| + 'the next sibling is changed by method replace()');
|
| +
|
| +test(function() {
|
| + var test = this;
|
| + var parents = [AnimationGroup, AnimationSequence];
|
| + parents.forEach(function(parentCtor) {
|
| + var nodes = [newAnimation(createDiv(test)), new AnimationGroup([]), new AnimationSequence([])];
|
| + nodes.forEach(function(node4) {
|
| + var node1 = newAnimation(createDiv(test));
|
| + var node2 = newAnimation(createDiv(test));
|
| + var node3 = newAnimation(createDiv(test));
|
| + var parent1 = new parentCtor([node1, node2, node3]);
|
| + var parent2 = new parentCtor([node4]);
|
| +
|
| + node4.replace(node2);
|
| +
|
| + assert_equals(node1.nextSibling, node3, type(node4) + '.replace() should update ' +
|
| + 'next sibling of animation node');
|
| + assert_equals(node2.nextSibling, null, type(node4) + '.replace() should update ' +
|
| + 'next sibling of animation node');
|
| + });
|
| + });
|
| +}, 'AnimationNode.nextSibling returns next sibling of this animation node, ' +
|
| + 'the next sibling is removed by method replace()');
|
| +
|
| +test(function() {
|
| + var test = this;
|
| + var parents = [AnimationGroup, AnimationSequence];
|
| + parents.forEach(function(parentCtor) {
|
| + var nodes = [newAnimation(createDiv(test)), new AnimationGroup([]), new AnimationSequence([])];
|
| + nodes.forEach(function(node2) {
|
| + var node1 = newAnimation(createDiv(test));
|
| + var node3 = newAnimation(createDiv(test));
|
| + var node4 = newAnimation(createDiv(test));
|
| + var node5 = new AnimationGroup([]);
|
| + var node6 = new AnimationSequence([]);
|
| + var parent = new parentCtor([node1, node2, node3]);
|
| + node2.replace(node4, node5, node6);
|
| +
|
| + assert_equals(node1.nextSibling, node4, type(node2) + '.replace() should update ' +
|
| + 'next sibling of animation node');
|
| + assert_equals(node4.nextSibling, node5, type(node2) + '.replace() should update ' +
|
| + 'next sibling of animation node');
|
| + assert_equals(node5.nextSibling, node6, type(node2) + '.replace() should update ' +
|
| + 'next sibling of animation node');
|
| + assert_equals(node6.nextSibling, node3, type(node2) + '.replace() should update ' +
|
| + 'next sibling of animation node');
|
| + assert_equals(node2.nextSibling, null, type(node2) + '.replace() should update ' +
|
| + 'next sibling of animation node');
|
| + });
|
| + });
|
| +}, 'AnimationNode.nextSibling returns next sibling of this animation node, ' +
|
| + 'several nodes are added by method replace()');
|
| +
|
| +test(function() {
|
| + var test = this;
|
| + var parents = [AnimationGroup, AnimationSequence];
|
| + parents.forEach(function(parentCtor) {
|
| + var nodes = [newAnimation(createDiv(test)), new AnimationGroup([]), new AnimationSequence([])];
|
| + nodes.forEach(function(node2) {
|
| + var node1 = newAnimation(createDiv(test));
|
| + var node3 = newAnimation(createDiv(test));
|
| + var parent = new parentCtor([node1, node2, node3]);
|
| + node2.remove();
|
| +
|
| + assert_equals(node1.nextSibling, node3, type(node2) + '.replace() should update ' +
|
| + 'next sibling of animation node');
|
| + assert_equals(node2.nextSibling, null, type(node2) + '.replace() should update ' +
|
| + 'next sibling of animation node');
|
| + });
|
| + });
|
| +}, 'AnimationNode.nextSibling returns next sibling of this animation node, ' +
|
| + 'the next sibling is changed by method remove()');
|
| +
|
| +test(function() {
|
| + var test = this;
|
| + var parents = [AnimationGroup, AnimationSequence];
|
| + parents.forEach(function(parentCtor) {
|
| + var nodes = [newAnimation(createDiv(test)), new AnimationGroup([]), new AnimationSequence([])];
|
| + nodes.forEach(function(node2) {
|
| + var node1 = newAnimation(createDiv(test));
|
| + var parent = new parentCtor([node1]);
|
| + parent.prepend(node2);
|
| +
|
| + assert_equals(node2.nextSibling, node1, parentCtor.name + '.prepend() should update ' +
|
| + 'next sibling of animation node');
|
| + });
|
| + });
|
| +}, 'AnimationNode.nextSibling returns next sibling of this animation node, ' +
|
| + 'the next sibling is changed by method AnimationGroup.prepend()');
|
| +
|
| +test(function() {
|
| + var test = this;
|
| + var parents = [AnimationGroup, AnimationSequence];
|
| + parents.forEach(function(parentCtor) {
|
| + var nodes = [newAnimation(createDiv(test)), new AnimationGroup([]), new AnimationSequence([])];
|
| + nodes.forEach(function(node1) {
|
| + var node2 = newAnimation(createDiv(test));
|
| + var node3 = newAnimation(createDiv(test));
|
| + var parent1 = new parentCtor([node1, node2]);
|
| + var parent2 = new parentCtor([node3]);
|
| +
|
| + parent2.prepend(node2);
|
| +
|
| + assert_equals(node1.nextSibling, null, parentCtor.name + '.prepend() should update ' +
|
| + 'next sibling of animation node');
|
| + assert_equals(node2.nextSibling, node3, parentCtor.name + '.prepend() should update ' +
|
| + 'next sibling of animation node');
|
| + });
|
| + });
|
| +}, 'AnimationNode.nextSibling returns next sibling of this animation node, ' +
|
| + 'the next sibling is removed by method AnimationGroup.prepend()');
|
| +
|
| +test(function() {
|
| + var test = this;
|
| + var parents = [AnimationGroup, AnimationSequence];
|
| + parents.forEach(function(parentCtor) {
|
| + var node1 = newAnimation(createDiv(test));
|
| + var node2 = new AnimationGroup([]);
|
| + var node3 = new AnimationSequence([]);
|
| + var node4 = newAnimation(createDiv(test));
|
| + var parent = new parentCtor([node1]);
|
| + parent.prepend(node2, node3, node4);
|
| +
|
| + assert_equals(node2.nextSibling, node3, parentCtor.name + '.prepend() should update ' +
|
| + 'next sibling of animation node');
|
| + assert_equals(node3.nextSibling, node4, parentCtor.name + '.prepend() should update ' +
|
| + 'next sibling of animation node');
|
| + assert_equals(node4.nextSibling, node1, parentCtor.name + '.prepend() should update ' +
|
| + 'next sibling of animation node');
|
| + });
|
| +}, 'AnimationNode.nextSibling returns next sibling of this animation node, ' +
|
| + 'several nodes are added by method AnimationGroup.prepend()');
|
| +
|
| +test(function() {
|
| + var test = this;
|
| + var parents = [AnimationGroup, AnimationSequence];
|
| + parents.forEach(function(parentCtor) {
|
| + var nodes = [newAnimation(createDiv(test)), new AnimationGroup([]), new AnimationSequence([])];
|
| + nodes.forEach(function(node1) {
|
| + var node2 = newAnimation(createDiv(test));
|
| + var parent = new parentCtor([node1]);
|
| + parent.append(node2);
|
| +
|
| + assert_equals(node1.nextSibling, node2, parentCtor.name + '.append() should update ' +
|
| + 'next sibling of animation node');
|
| + assert_equals(node2.nextSibling, null, parentCtor.name + '.append() should update ' +
|
| + 'next sibling of animation node');
|
| + });
|
| + });
|
| +}, 'AnimationNode.nextSibling returns next sibling of this animation node, ' +
|
| + 'the next sibling is changed by method AnimationGroup.append()');
|
| +
|
| +test(function() {
|
| + var test = this;
|
| + var parents = [AnimationGroup, AnimationSequence];
|
| + parents.forEach(function(parentCtor) {
|
| + var nodes = [newAnimation(createDiv(test)), new AnimationGroup([]), new AnimationSequence([])];
|
| + nodes.forEach(function(node1) {
|
| + var node2 = newAnimation(createDiv(test));
|
| + var node3 = newAnimation(createDiv(test));
|
| + var parent1 = new parentCtor([node1, node2]);
|
| + var parent2 = new parentCtor([node3]);
|
| +
|
| + parent2.append(node2);
|
| +
|
| + assert_equals(node1.nextSibling, null, parentCtor.name + '.append() should update ' +
|
| + 'next sibling of animation node');
|
| + assert_equals(node3.nextSibling, node2, parentCtor.name + '.append() should update ' +
|
| + 'next sibling of animation node');
|
| + });
|
| + });
|
| +}, 'AnimationNode.nextSibling returns next sibling of this animation node, ' +
|
| + 'the next sibling is removed by method AnimationGroup.append()');
|
| +
|
| +test(function() {
|
| + var test = this;
|
| + var parents = [AnimationGroup, AnimationSequence];
|
| + parents.forEach(function(parentCtor) {
|
| + var nodes = [newAnimation(createDiv(test)), new AnimationGroup([]), new AnimationSequence([])];
|
| + nodes.forEach(function(node1) {
|
| + var node2 = newAnimation(createDiv(test));
|
| + var node3 = new AnimationGroup([]);
|
| + var node4 = new AnimationSequence([]);
|
| + var parent = new parentCtor([node1]);
|
| + parent.append(node2, node3, node4);
|
| +
|
| + assert_equals(node1.nextSibling, node2, parentCtor.name + '.append() should update ' +
|
| + 'next sibling of animation node');
|
| + assert_equals(node2.nextSibling, node3, parentCtor.name + '.append() should update ' +
|
| + 'next sibling of animation node');
|
| + assert_equals(node3.nextSibling, node4, parentCtor.name + '.append() should update ' +
|
| + 'next sibling of animation node');
|
| + assert_equals(node4.nextSibling, null, parentCtor.name + '.append() should update ' +
|
| + 'next sibling of animation node');
|
| + });
|
| + });
|
| +}, 'AnimationNode.nextSibling returns next sibling of this animation node, ' +
|
| + 'several nodes are added by method AnimationGroup.append()');
|
| +</script>
|
| +</body>
|
|
|