From 2254a9e923e9eb425eb66258d448150f6dbf4f63 Mon Sep 17 00:00:00 2001 From: Adrien Bustany Date: Tue, 4 Feb 2014 11:43:41 +0100 Subject: [PATCH 1/3] script: Pass the correct parent node to pre_insert in insertBefore Closes #1572. --- src/components/script/dom/bindings/codegen/Bindings.conf | 1 + src/components/script/dom/node.rs | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/components/script/dom/bindings/codegen/Bindings.conf b/src/components/script/dom/bindings/codegen/Bindings.conf index 98d6ef23dd3..03ebf2a0d35 100644 --- a/src/components/script/dom/bindings/codegen/Bindings.conf +++ b/src/components/script/dom/bindings/codegen/Bindings.conf @@ -316,6 +316,7 @@ DOMInterfaces = { 'pointerType': '', 'needsAbstract': [ 'appendChild', + 'insertBefore', 'replaceChild', 'nodeName', 'nodeValue', diff --git a/src/components/script/dom/node.rs b/src/components/script/dom/node.rs index c1626730d56..cc64c8bdb62 100644 --- a/src/components/script/dom/node.rs +++ b/src/components/script/dom/node.rs @@ -1346,9 +1346,9 @@ impl Node { Ok(()) } - pub fn InsertBefore(&self, node: AbstractNode, child: Option) + pub fn InsertBefore(&self, abstract_self: AbstractNode, node: AbstractNode, child: Option) -> Fallible { - Node::pre_insert(node, node, child) + Node::pre_insert(node, abstract_self, child) } pub fn wait_until_safe_to_modify_dom(&self) { From 2b541a9a13d91ec41a8081cfc4173a6522e8b239 Mon Sep 17 00:00:00 2001 From: Adrien Bustany Date: Wed, 5 Feb 2014 16:27:10 +0100 Subject: [PATCH 2/3] Add a test file for insertBefore --- .../html/content/test_node_insertBefore.html | 22 +++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 src/test/html/content/test_node_insertBefore.html diff --git a/src/test/html/content/test_node_insertBefore.html b/src/test/html/content/test_node_insertBefore.html new file mode 100644 index 00000000000..e0ddb6f3727 --- /dev/null +++ b/src/test/html/content/test_node_insertBefore.html @@ -0,0 +1,22 @@ + + + + + + + + + From 6443318347709026d1f9bfc5a94c83836be54355 Mon Sep 17 00:00:00 2001 From: Adrien Bustany Date: Wed, 5 Feb 2014 18:24:27 +0100 Subject: [PATCH 3/3] tests: Add missing finish() and a title in insertBefore content test --- src/test/html/content/test_node_insertBefore.html | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/test/html/content/test_node_insertBefore.html b/src/test/html/content/test_node_insertBefore.html index e0ddb6f3727..8ee4e6e68b2 100644 --- a/src/test/html/content/test_node_insertBefore.html +++ b/src/test/html/content/test_node_insertBefore.html @@ -1,6 +1,7 @@ + Node.insertBefore @@ -16,6 +17,8 @@ is(root.insertBefore(before, after), before, "test1-0, insertBefore"); is(root.childNodes[0], before, "test1-1, insertBefore"); is(root.childNodes[1], after, "test1-2, insertBefore"); + + finish(); }