aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--components/script/dom/range.rs3
-rw-r--r--tests/wpt/metadata/dom/ranges/Range-insertNode.html.ini80
-rw-r--r--tests/wpt/metadata/dom/ranges/Range-surroundContents.html.ini62
3 files changed, 3 insertions, 142 deletions
diff --git a/components/script/dom/range.rs b/components/script/dom/range.rs
index df3d0d35883..7044746ddf1 100644
--- a/components/script/dom/range.rs
+++ b/components/script/dom/range.rs
@@ -658,6 +658,9 @@ impl RangeMethods for Range {
let start_offset = self.StartOffset();
// Step 1.
+ if &*start_node == node {
+ return Err(Error::HierarchyRequest);
+ }
match start_node.type_id() {
// Handled under step 2.
NodeTypeId::CharacterData(CharacterDataTypeId::Text) => (),
diff --git a/tests/wpt/metadata/dom/ranges/Range-insertNode.html.ini b/tests/wpt/metadata/dom/ranges/Range-insertNode.html.ini
deleted file mode 100644
index 96d14f31928..00000000000
--- a/tests/wpt/metadata/dom/ranges/Range-insertNode.html.ini
+++ /dev/null
@@ -1,80 +0,0 @@
-[Range-insertNode.html]
- type: testharness
- [0,1: resulting DOM for range [paras[0\].firstChild, 0, paras[0\].firstChild, 0\], node paras[0\].firstChild]
- expected: FAIL
-
- [0,1: resulting range position for range [paras[0\].firstChild, 0, paras[0\].firstChild, 0\], node paras[0\].firstChild]
- expected: FAIL
-
- [1,1: resulting DOM for range [paras[0\].firstChild, 0, paras[0\].firstChild, 1\], node paras[0\].firstChild]
- expected: FAIL
-
- [1,1: resulting range position for range [paras[0\].firstChild, 0, paras[0\].firstChild, 1\], node paras[0\].firstChild]
- expected: FAIL
-
- [2,1: resulting DOM for range [paras[0\].firstChild, 2, paras[0\].firstChild, 8\], node paras[0\].firstChild]
- expected: FAIL
-
- [2,1: resulting range position for range [paras[0\].firstChild, 2, paras[0\].firstChild, 8\], node paras[0\].firstChild]
- expected: FAIL
-
- [3,1: resulting DOM for range [paras[0\].firstChild, 2, paras[0\].firstChild, 9\], node paras[0\].firstChild]
- expected: FAIL
-
- [3,1: resulting range position for range [paras[0\].firstChild, 2, paras[0\].firstChild, 9\], node paras[0\].firstChild]
- expected: FAIL
-
- [4,2: resulting DOM for range [paras[1\].firstChild, 0, paras[1\].firstChild, 0\], node paras[1\].firstChild]
- expected: FAIL
-
- [4,2: resulting range position for range [paras[1\].firstChild, 0, paras[1\].firstChild, 0\], node paras[1\].firstChild]
- expected: FAIL
-
- [5,2: resulting DOM for range [paras[1\].firstChild, 2, paras[1\].firstChild, 9\], node paras[1\].firstChild]
- expected: FAIL
-
- [5,2: resulting range position for range [paras[1\].firstChild, 2, paras[1\].firstChild, 9\], node paras[1\].firstChild]
- expected: FAIL
-
- [6,6: resulting DOM for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0\], node detachedPara1.firstChild]
- expected: FAIL
-
- [6,6: resulting range position for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0\], node detachedPara1.firstChild]
- expected: FAIL
-
- [7,6: resulting DOM for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8\], node detachedPara1.firstChild]
- expected: FAIL
-
- [7,6: resulting range position for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8\], node detachedPara1.firstChild]
- expected: FAIL
-
- [8,4: resulting DOM for range [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0\], node foreignPara1.firstChild]
- expected: FAIL
-
- [8,4: resulting range position for range [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0\], node foreignPara1.firstChild]
- expected: FAIL
-
- [9,4: resulting DOM for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8\], node foreignPara1.firstChild]
- expected: FAIL
-
- [9,4: resulting range position for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8\], node foreignPara1.firstChild]
- expected: FAIL
-
- [18,1: resulting DOM for range [paras[0\].firstChild, 0, paras[1\].firstChild, 0\], node paras[0\].firstChild]
- expected: FAIL
-
- [18,1: resulting range position for range [paras[0\].firstChild, 0, paras[1\].firstChild, 0\], node paras[0\].firstChild]
- expected: FAIL
-
- [19,1: resulting DOM for range [paras[0\].firstChild, 0, paras[1\].firstChild, 8\], node paras[0\].firstChild]
- expected: FAIL
-
- [19,1: resulting range position for range [paras[0\].firstChild, 0, paras[1\].firstChild, 8\], node paras[0\].firstChild]
- expected: FAIL
-
- [20,1: resulting DOM for range [paras[0\].firstChild, 3, paras[3\], 1\], node paras[0\].firstChild]
- expected: FAIL
-
- [20,1: resulting range position for range [paras[0\].firstChild, 3, paras[3\], 1\], node paras[0\].firstChild]
- expected: FAIL
-
diff --git a/tests/wpt/metadata/dom/ranges/Range-surroundContents.html.ini b/tests/wpt/metadata/dom/ranges/Range-surroundContents.html.ini
deleted file mode 100644
index 89459529b33..00000000000
--- a/tests/wpt/metadata/dom/ranges/Range-surroundContents.html.ini
+++ /dev/null
@@ -1,62 +0,0 @@
-[Range-surroundContents.html]
- type: testharness
- [0,1: resulting DOM for range [paras[0\].firstChild, 0, paras[0\].firstChild, 0\], node paras[0\].firstChild]
- expected: FAIL
-
- [0,1: resulting range position for range [paras[0\].firstChild, 0, paras[0\].firstChild, 0\], node paras[0\].firstChild]
- expected: FAIL
-
- [1,1: resulting DOM for range [paras[0\].firstChild, 0, paras[0\].firstChild, 1\], node paras[0\].firstChild]
- expected: FAIL
-
- [1,1: resulting range position for range [paras[0\].firstChild, 0, paras[0\].firstChild, 1\], node paras[0\].firstChild]
- expected: FAIL
-
- [2,1: resulting DOM for range [paras[0\].firstChild, 2, paras[0\].firstChild, 8\], node paras[0\].firstChild]
- expected: FAIL
-
- [2,1: resulting range position for range [paras[0\].firstChild, 2, paras[0\].firstChild, 8\], node paras[0\].firstChild]
- expected: FAIL
-
- [3,1: resulting DOM for range [paras[0\].firstChild, 2, paras[0\].firstChild, 9\], node paras[0\].firstChild]
- expected: FAIL
-
- [3,1: resulting range position for range [paras[0\].firstChild, 2, paras[0\].firstChild, 9\], node paras[0\].firstChild]
- expected: FAIL
-
- [4,2: resulting DOM for range [paras[1\].firstChild, 0, paras[1\].firstChild, 0\], node paras[1\].firstChild]
- expected: FAIL
-
- [4,2: resulting range position for range [paras[1\].firstChild, 0, paras[1\].firstChild, 0\], node paras[1\].firstChild]
- expected: FAIL
-
- [5,2: resulting DOM for range [paras[1\].firstChild, 2, paras[1\].firstChild, 9\], node paras[1\].firstChild]
- expected: FAIL
-
- [5,2: resulting range position for range [paras[1\].firstChild, 2, paras[1\].firstChild, 9\], node paras[1\].firstChild]
- expected: FAIL
-
- [6,6: resulting DOM for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0\], node detachedPara1.firstChild]
- expected: FAIL
-
- [6,6: resulting range position for range [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0\], node detachedPara1.firstChild]
- expected: FAIL
-
- [7,6: resulting DOM for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8\], node detachedPara1.firstChild]
- expected: FAIL
-
- [7,6: resulting range position for range [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8\], node detachedPara1.firstChild]
- expected: FAIL
-
- [8,4: resulting DOM for range [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0\], node foreignPara1.firstChild]
- expected: FAIL
-
- [8,4: resulting range position for range [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0\], node foreignPara1.firstChild]
- expected: FAIL
-
- [9,4: resulting DOM for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8\], node foreignPara1.firstChild]
- expected: FAIL
-
- [9,4: resulting range position for range [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8\], node foreignPara1.firstChild]
- expected: FAIL
-