Range API is throwing wrong exception type
authorcdumez@apple.com <cdumez@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 1 Sep 2015 02:25:00 +0000 (02:25 +0000)
committercdumez@apple.com <cdumez@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 1 Sep 2015 02:25:00 +0000 (02:25 +0000)
https://bugs.webkit.org/show_bug.cgi?id=148648

Reviewed by Ryosuke Niwa.

Source/WebCore:

The RangeException type does not exist in the latest DOM specification.
Instead, the Range API is throwing regular DOMExceptions [1]:
https://dom.spec.whatwg.org/#range

The error codes also differ. RangeException.INVALID_NODE_TYPE_ERR (2)
is replaced with DOMException.INVALID_NODE_TYPE_ERR (24).
RangeException.BAD_BOUNDARYPOINTS_ERR (1) is replaced by
DOMException.INVALID_STATE_ERR (11), as per:
https://dom.spec.whatwg.org/#dom-range-surroundcontents (step 1).

This patch aligns WebKit's behavior with the specification and with
other browsers (tested Firefox and Chrome).

[1] https://heycam.github.io/webidl/#dfn-DOMException

No new tests, covered by existing tests (rebaselined):
http/tests/w3c/dom/ranges/Range-comparePoint.html
http/tests/w3c/dom/ranges/Range-isPointInRange.html
http/tests/w3c/dom/ranges/Range-selectNode.html
http/tests/w3c/dom/ranges/Range-set.html
http/tests/w3c/dom/ranges/Range-surroundContents.html

* CMakeLists.txt:
* DerivedSources.cpp:
* DerivedSources.make:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
* WebCore.xcodeproj/project.pbxproj:
* bindings/js/JSExceptionBase.cpp:
(WebCore::toExceptionBase): Deleted.
* dom/DOMAllInOne.cpp:
* dom/DOMExceptions.in:
* dom/Range.cpp:
(WebCore::Range::insertNode):
(WebCore::Range::checkNodeWOffset):
(WebCore::Range::checkNodeBA):
(WebCore::Range::selectNode):
(WebCore::Range::selectNodeContents):
(WebCore::Range::surroundContents):
* dom/RangeException.cpp: Removed.
* dom/RangeException.h: Removed.
* dom/RangeException.idl: Removed.

Source/WebKit/win:

* Interfaces/DOMWindow.idl:
Drop outdated comment.

LayoutTests:

Update / rebaseline tests. A lot of w3c tests progressed after this
change. However, some of our pre-existing layout tests were relying
on RangeException.

* fast/dom/DOMException/RangeException-expected.txt: Removed.
* fast/dom/DOMException/RangeException.html: Removed.
* fast/dom/DOMException/resources/RangeException.js: Removed.
* fast/dom/Range/range-compareNode.html:
* fast/dom/Range/range-exceptions-expected.txt:
* fast/dom/Range/range-intersectsNode-expected.txt:
* fast/dom/Range/script-tests/range-exceptions.js:
* fast/dom/Window/get-set-properties-expected.txt:
* fast/dom/Window/get-set-properties.html:
* fast/dom/Window/resources/window-properties.js:
* http/tests/w3c/dom/ranges/Range-comparePoint-expected.txt:
* http/tests/w3c/dom/ranges/Range-isPointInRange-expected.txt:
* http/tests/w3c/dom/ranges/Range-selectNode-expected.txt:
* http/tests/w3c/dom/ranges/Range-set-expected.txt:
* http/tests/w3c/dom/ranges/Range-surroundContents-expected.txt:
* platform/mac/fast/dom/Window/window-lookup-precedence-expected.txt:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@189202 268f45cc-cd09-0410-ab3c-d52691b4dbfc

44 files changed:
LayoutTests/ChangeLog
LayoutTests/fast/dom/DOMException/RangeException-expected.txt [deleted file]
LayoutTests/fast/dom/DOMException/RangeException.html [deleted file]
LayoutTests/fast/dom/DOMException/resources/RangeException.js [deleted file]
LayoutTests/fast/dom/Range/range-compareNode.html
LayoutTests/fast/dom/Range/range-exceptions-expected.txt
LayoutTests/fast/dom/Range/range-intersectsNode-expected.txt
LayoutTests/fast/dom/Range/script-tests/range-exceptions.js
LayoutTests/fast/dom/Window/get-set-properties-expected.txt
LayoutTests/fast/dom/Window/get-set-properties.html
LayoutTests/fast/dom/Window/resources/window-properties.js
LayoutTests/http/tests/security/cross-frame-access-getOwnPropertyDescriptor-expected.txt
LayoutTests/http/tests/security/cross-frame-access-getOwnPropertyDescriptor.html
LayoutTests/http/tests/security/cross-frame-access-put-expected.txt
LayoutTests/http/tests/security/cross-frame-access-put.html
LayoutTests/http/tests/w3c/dom/historical-expected.txt
LayoutTests/http/tests/w3c/dom/ranges/Range-comparePoint-expected.txt
LayoutTests/http/tests/w3c/dom/ranges/Range-isPointInRange-expected.txt
LayoutTests/http/tests/w3c/dom/ranges/Range-selectNode-expected.txt
LayoutTests/http/tests/w3c/dom/ranges/Range-set-expected.txt
LayoutTests/http/tests/w3c/dom/ranges/Range-surroundContents-expected.txt
LayoutTests/platform/efl/js/dom/global-constructors-attributes-expected.txt
LayoutTests/platform/gtk/js/dom/global-constructors-attributes-expected.txt
LayoutTests/platform/mac-mavericks/js/dom/global-constructors-attributes-expected.txt
LayoutTests/platform/mac-yosemite/js/dom/global-constructors-attributes-expected.txt
LayoutTests/platform/mac/fast/dom/Window/window-lookup-precedence-expected.txt
LayoutTests/platform/mac/js/dom/global-constructors-attributes-expected.txt
LayoutTests/platform/win/js/dom/global-constructors-attributes-expected.txt
Source/WebCore/CMakeLists.txt
Source/WebCore/ChangeLog
Source/WebCore/DerivedSources.cpp
Source/WebCore/DerivedSources.make
Source/WebCore/WebCore.vcxproj/WebCore.vcxproj
Source/WebCore/WebCore.vcxproj/WebCore.vcxproj.filters
Source/WebCore/WebCore.xcodeproj/project.pbxproj
Source/WebCore/bindings/js/JSExceptionBase.cpp
Source/WebCore/dom/DOMAllInOne.cpp
Source/WebCore/dom/DOMExceptions.in
Source/WebCore/dom/Range.cpp
Source/WebCore/dom/RangeException.cpp [deleted file]
Source/WebCore/dom/RangeException.h [deleted file]
Source/WebCore/dom/RangeException.idl [deleted file]
Source/WebKit/win/ChangeLog
Source/WebKit/win/Interfaces/DOMWindow.idl

index 6d9f1fc..e29d7a8 100644 (file)
@@ -1,3 +1,31 @@
+2015-08-31  Chris Dumez  <cdumez@apple.com>
+
+        Range API is throwing wrong exception type
+        https://bugs.webkit.org/show_bug.cgi?id=148648
+
+        Reviewed by Ryosuke Niwa.
+
+        Update / rebaseline tests. A lot of w3c tests progressed after this
+        change. However, some of our pre-existing layout tests were relying
+        on RangeException.
+
+        * fast/dom/DOMException/RangeException-expected.txt: Removed.
+        * fast/dom/DOMException/RangeException.html: Removed.
+        * fast/dom/DOMException/resources/RangeException.js: Removed.
+        * fast/dom/Range/range-compareNode.html:
+        * fast/dom/Range/range-exceptions-expected.txt:
+        * fast/dom/Range/range-intersectsNode-expected.txt:
+        * fast/dom/Range/script-tests/range-exceptions.js:
+        * fast/dom/Window/get-set-properties-expected.txt:
+        * fast/dom/Window/get-set-properties.html:
+        * fast/dom/Window/resources/window-properties.js:
+        * http/tests/w3c/dom/ranges/Range-comparePoint-expected.txt:
+        * http/tests/w3c/dom/ranges/Range-isPointInRange-expected.txt:
+        * http/tests/w3c/dom/ranges/Range-selectNode-expected.txt:
+        * http/tests/w3c/dom/ranges/Range-set-expected.txt:
+        * http/tests/w3c/dom/ranges/Range-surroundContents-expected.txt:
+        * platform/mac/fast/dom/Window/window-lookup-precedence-expected.txt:
+
 2015-08-31  Alexey Proskuryakov  <ap@apple.com>
 
         Update Windows expectation for fast/events/wheelevent-basic.html after r188793.
diff --git a/LayoutTests/fast/dom/DOMException/RangeException-expected.txt b/LayoutTests/fast/dom/DOMException/RangeException-expected.txt
deleted file mode 100644 (file)
index 3645f6a..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-Tests the properties of the RangeException object.
-
-On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
-
-
-PASS e.toString() is "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2"
-PASS Object.prototype.toString.call(e) is "[object RangeException]"
-PASS Object.prototype.toString.call(e.__proto__) is "[object RangeExceptionPrototype]"
-PASS e.constructor.toString() is "[object RangeExceptionConstructor]"
-PASS e.constructor is window.RangeException
-PASS e.INVALID_NODE_TYPE_ERR is e.constructor.INVALID_NODE_TYPE_ERR
-PASS e.BAD_BOUNDARYPOINTS_ERR is 1
-PASS e.INVALID_NODE_TYPE_ERR is 2
-PASS successfullyParsed is true
-
-TEST COMPLETE
-
diff --git a/LayoutTests/fast/dom/DOMException/RangeException.html b/LayoutTests/fast/dom/DOMException/RangeException.html
deleted file mode 100644 (file)
index eaa758b..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
-<html>
-<head>
-<script src="../../../resources/js-test-pre.js"></script>
-</head>
-<body>
-<script src="resources/RangeException.js"></script>
-<script src="../../../resources/js-test-post.js"></script>
-</body>
-</html>
diff --git a/LayoutTests/fast/dom/DOMException/resources/RangeException.js b/LayoutTests/fast/dom/DOMException/resources/RangeException.js
deleted file mode 100644 (file)
index 6d602f7..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-description("Tests the properties of the RangeException object.")
-
-var e;
-try {
-    document.createRange().setStartAfter(document, 0);
-    // raises INVALID_NODE_TYPE_ERR
-} catch (err) {
-    e = err;
-}
-
-shouldBeEqualToString("e.toString()", "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2");
-shouldBeEqualToString("Object.prototype.toString.call(e)", "[object RangeException]");
-shouldBeEqualToString("Object.prototype.toString.call(e.__proto__)", "[object RangeExceptionPrototype]");
-shouldBeEqualToString("e.constructor.toString()", "[object RangeExceptionConstructor]");
-shouldBe("e.constructor", "window.RangeException");
-shouldBe("e.INVALID_NODE_TYPE_ERR", "e.constructor.INVALID_NODE_TYPE_ERR");
-shouldBe("e.BAD_BOUNDARYPOINTS_ERR", "1");
-shouldBe("e.INVALID_NODE_TYPE_ERR", "2");
index 93149a3..7739748 100644 (file)
@@ -147,7 +147,7 @@ function test()
     try {
         range.selectNode(document);
     } catch (e) {
-        if(e.code == RangeException.INVALID_NODE_TYPE_ERR) {
+        if(e.code == DOMException.INVALID_NODE_TYPE_ERR) {
             document.getElementById("test17").innerHTML = "test 17 passed: the range has no parent";
         } else {
             document.getElementById("test17").innerHTML = "<span style=\"color: red;\">test 17 failed error: " + e.message + "\n Code: " + e.code +"</span>";
index 76d2aed..7ab97f9 100644 (file)
@@ -5,8 +5,8 @@ On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE
 
 PASS node.innerHTML is '<bar>AB<moo>C</moo>DE</bar>'
 PASS foo.outerHTML is '<foo></foo>'
-PASS range.surroundContents(foo) threw exception Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2.
-PASS r.surroundContents(document.createElement('a')) threw exception Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1.
+PASS range.surroundContents(foo) threw exception Error: InvalidNodeTypeError: DOM Exception 24.
+PASS r.surroundContents(document.createElement('a')) threw exception Error: InvalidStateError: DOM Exception 11.
 PASS r.surroundContents(document.createElement('a')) threw exception Error: HierarchyRequestError: DOM Exception 3.
 PASS successfullyParsed is true
 
index 3f655b3..35d4f11 100644 (file)
@@ -53,7 +53,7 @@ PASS intersects is false
 PASS range.intersectsNode(document) threw exception Error: NotFoundError: DOM Exception 8.
 
 2.4 Range has no parent
-PASS range.selectNode(document) threw exception Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2.
+PASS range.selectNode(document) threw exception Error: InvalidNodeTypeError: DOM Exception 24.
 
 2.5 Wrong documents
 PASS intersects is false
index 457b164..563c741 100644 (file)
@@ -22,7 +22,7 @@ node.appendChild(c2);
 var r = document.createRange();
 r.setStart(c1, 2);
 r.setEnd(c2, 3);
-shouldThrow("r.surroundContents(document.createElement('a'))", '"Error: BAD_BOUNDARYPOINTS_ERR: DOM Range Exception 1"');
+shouldThrow("r.surroundContents(document.createElement('a'))", '"Error: InvalidStateError: DOM Exception 11"');
 
 // But not when we don't try to split the comment.
 r.setStart(c1, 0);
index b695647..da3da2c 100644 (file)
@@ -167,8 +167,6 @@ PASS: canGet('Range') should be 'true' and is.
 PASS: canSet('Range') should be 'true' and is.
 PASS: canGet('RangeError') should be 'true' and is.
 PASS: canSet('RangeError') should be 'true' and is.
-PASS: canGet('RangeException') should be 'true' and is.
-PASS: canSet('RangeException') should be 'true' and is.
 PASS: canGet('ReferenceError') should be 'true' and is.
 PASS: canSet('ReferenceError') should be 'true' and is.
 PASS: canGet('SyntaxError') should be 'true' and is.
index 1087857..cb5bc38 100644 (file)
@@ -151,7 +151,6 @@ var windowReadWriteProperties = [
     "ProcessingInstruction", 
     "Range", 
     "RangeError", 
-    "RangeException", 
     "ReferenceError", 
     "SyntaxError", 
     "Text", 
index 7d759c5..ca4d8df 100644 (file)
@@ -129,7 +129,6 @@ var propertyInfo = [
     ["ProcessingInstruction", "object"],
     ["ProgressEvent", "object"],
     ["Range", "object"],
-    ["RangeException", "object"],
     ["Rect", "object"],
     ["SVGAngle", "object"],
     ["SVGColor", "object"],
index d5d5688..440c80a 100644 (file)
@@ -149,7 +149,6 @@ PASS: canGetDescriptor(targetWindow, 'Option') should be 'false' and is.
 PASS: canGetDescriptor(targetWindow, 'ProcessingInstruction') should be 'false' and is.
 PASS: canGetDescriptor(targetWindow, 'Range') should be 'false' and is.
 PASS: canGetDescriptor(targetWindow, 'RangeError') should be 'false' and is.
-PASS: canGetDescriptor(targetWindow, 'RangeException') should be 'false' and is.
 PASS: canGetDescriptor(targetWindow, 'ReferenceError') should be 'false' and is.
 PASS: canGetDescriptor(targetWindow, 'SyntaxError') should be 'false' and is.
 PASS: canGetDescriptor(targetWindow, 'Text') should be 'false' and is.
index c74fbff..1e2b1f9 100644 (file)
@@ -90,7 +90,6 @@
             "ProcessingInstruction", 
             "Range", 
             "RangeError", 
-            "RangeException", 
             "ReferenceError", 
             "SyntaxError", 
             "Text", 
index 4e5ff6a..3ed4d3f 100644 (file)
@@ -79,7 +79,7 @@ ALERT: PASS: window.NodeFilter should be '[object NodeFilterConstructor]' and is
 ALERT: PASS: window.ProcessingInstruction should be '[object ProcessingInstructionConstructor]' and is.
 ALERT: PASS: window.Range should be '[object RangeConstructor]' and is.
 ALERT: PASS: window.RangeError should be 'function RangeError() {    [native code]}' and is.
-ALERT: PASS: window.RangeException should be '[object RangeExceptionConstructor]' and is.
+ALERT: PASS: window.RangeException should be 'undefined' and is.
 ALERT: PASS: window.ReferenceError should be 'function ReferenceError() {    [native code]}' and is.
 ALERT: PASS: window.SyntaxError should be 'function SyntaxError() {    [native code]}' and is.
 ALERT: PASS: window.Text should be '[object TextConstructor]' and is.
@@ -276,15 +276,15 @@ CONSOLE MESSAGE: line 122: Blocked a frame with origin "http://127.0.0.1:8000" f
 CONSOLE MESSAGE: line 123: Blocked a frame with origin "http://127.0.0.1:8000" from accessing a frame with origin "http://localhost:8000". Protocols, domains, and ports must match.
 CONSOLE MESSAGE: line 124: Blocked a frame with origin "http://127.0.0.1:8000" from accessing a frame with origin "http://localhost:8000". Protocols, domains, and ports must match.
 CONSOLE MESSAGE: line 125: Blocked a frame with origin "http://127.0.0.1:8000" from accessing a frame with origin "http://localhost:8000". Protocols, domains, and ports must match.
-CONSOLE MESSAGE: line 126: Blocked a frame with origin "http://127.0.0.1:8000" from accessing a frame with origin "http://localhost:8000". Protocols, domains, and ports must match.
-CONSOLE MESSAGE: line 135: Blocked a frame with origin "http://127.0.0.1:8000" from accessing a frame with origin "http://localhost:8000". Protocols, domains, and ports must match.
-CONSOLE MESSAGE: line 137: Blocked a frame with origin "http://127.0.0.1:8000" from accessing a frame with origin "http://localhost:8000". Protocols, domains, and ports must match.
+CONSOLE MESSAGE: line 134: Blocked a frame with origin "http://127.0.0.1:8000" from accessing a frame with origin "http://localhost:8000". Protocols, domains, and ports must match.
+CONSOLE MESSAGE: line 136: Blocked a frame with origin "http://127.0.0.1:8000" from accessing a frame with origin "http://localhost:8000". Protocols, domains, and ports must match.
+CONSOLE MESSAGE: line 138: Blocked a frame with origin "http://127.0.0.1:8000" from accessing a frame with origin "http://localhost:8000". Protocols, domains, and ports must match.
 CONSOLE MESSAGE: line 139: Blocked a frame with origin "http://127.0.0.1:8000" from accessing a frame with origin "http://localhost:8000". Protocols, domains, and ports must match.
 CONSOLE MESSAGE: line 140: Blocked a frame with origin "http://127.0.0.1:8000" from accessing a frame with origin "http://localhost:8000". Protocols, domains, and ports must match.
 CONSOLE MESSAGE: line 141: Blocked a frame with origin "http://127.0.0.1:8000" from accessing a frame with origin "http://localhost:8000". Protocols, domains, and ports must match.
 CONSOLE MESSAGE: line 142: Blocked a frame with origin "http://127.0.0.1:8000" from accessing a frame with origin "http://localhost:8000". Protocols, domains, and ports must match.
 CONSOLE MESSAGE: line 143: Blocked a frame with origin "http://127.0.0.1:8000" from accessing a frame with origin "http://localhost:8000". Protocols, domains, and ports must match.
-CONSOLE MESSAGE: line 144: Blocked a frame with origin "http://127.0.0.1:8000" from accessing a frame with origin "http://localhost:8000". Protocols, domains, and ports must match.
+CONSOLE MESSAGE: line 145: Blocked a frame with origin "http://127.0.0.1:8000" from accessing a frame with origin "http://localhost:8000". Protocols, domains, and ports must match.
 CONSOLE MESSAGE: line 146: Blocked a frame with origin "http://127.0.0.1:8000" from accessing a frame with origin "http://localhost:8000". Protocols, domains, and ports must match.
 CONSOLE MESSAGE: line 147: Blocked a frame with origin "http://127.0.0.1:8000" from accessing a frame with origin "http://localhost:8000". Protocols, domains, and ports must match.
 CONSOLE MESSAGE: line 148: Blocked a frame with origin "http://127.0.0.1:8000" from accessing a frame with origin "http://localhost:8000". Protocols, domains, and ports must match.
@@ -323,7 +323,7 @@ CONSOLE MESSAGE: line 180: Blocked a frame with origin "http://127.0.0.1:8000" f
 CONSOLE MESSAGE: line 181: Blocked a frame with origin "http://127.0.0.1:8000" from accessing a frame with origin "http://localhost:8000". Protocols, domains, and ports must match.
 CONSOLE MESSAGE: line 182: Blocked a frame with origin "http://127.0.0.1:8000" from accessing a frame with origin "http://localhost:8000". Protocols, domains, and ports must match.
 CONSOLE MESSAGE: line 183: Blocked a frame with origin "http://127.0.0.1:8000" from accessing a frame with origin "http://localhost:8000". Protocols, domains, and ports must match.
-CONSOLE MESSAGE: line 184: Blocked a frame with origin "http://127.0.0.1:8000" from accessing a frame with origin "http://localhost:8000". Protocols, domains, and ports must match.
+CONSOLE MESSAGE: line 186: Blocked a frame with origin "http://127.0.0.1:8000" from accessing a frame with origin "http://localhost:8000". Protocols, domains, and ports must match.
 CONSOLE MESSAGE: line 187: Blocked a frame with origin "http://127.0.0.1:8000" from accessing a frame with origin "http://localhost:8000". Protocols, domains, and ports must match.
 CONSOLE MESSAGE: line 188: Blocked a frame with origin "http://127.0.0.1:8000" from accessing a frame with origin "http://localhost:8000". Protocols, domains, and ports must match.
 CONSOLE MESSAGE: line 189: Blocked a frame with origin "http://127.0.0.1:8000" from accessing a frame with origin "http://localhost:8000". Protocols, domains, and ports must match.
@@ -339,7 +339,7 @@ CONSOLE MESSAGE: line 198: Blocked a frame with origin "http://127.0.0.1:8000" f
 CONSOLE MESSAGE: line 199: Blocked a frame with origin "http://127.0.0.1:8000" from accessing a frame with origin "http://localhost:8000". Protocols, domains, and ports must match.
 CONSOLE MESSAGE: line 200: Blocked a frame with origin "http://127.0.0.1:8000" from accessing a frame with origin "http://localhost:8000". Protocols, domains, and ports must match.
 CONSOLE MESSAGE: line 201: Blocked a frame with origin "http://127.0.0.1:8000" from accessing a frame with origin "http://localhost:8000". Protocols, domains, and ports must match.
-CONSOLE MESSAGE: line 202: Blocked a frame with origin "http://127.0.0.1:8000" from accessing a frame with origin "http://localhost:8000". Protocols, domains, and ports must match.
+CONSOLE MESSAGE: line 204: Blocked a frame with origin "http://127.0.0.1:8000" from accessing a frame with origin "http://localhost:8000". Protocols, domains, and ports must match.
 CONSOLE MESSAGE: line 205: Blocked a frame with origin "http://127.0.0.1:8000" from accessing a frame with origin "http://localhost:8000". Protocols, domains, and ports must match.
 CONSOLE MESSAGE: line 206: Blocked a frame with origin "http://127.0.0.1:8000" from accessing a frame with origin "http://localhost:8000". Protocols, domains, and ports must match.
 CONSOLE MESSAGE: line 207: Blocked a frame with origin "http://127.0.0.1:8000" from accessing a frame with origin "http://localhost:8000". Protocols, domains, and ports must match.
@@ -372,7 +372,6 @@ CONSOLE MESSAGE: line 233: Blocked a frame with origin "http://127.0.0.1:8000" f
 CONSOLE MESSAGE: line 234: Blocked a frame with origin "http://127.0.0.1:8000" from accessing a frame with origin "http://localhost:8000". Protocols, domains, and ports must match.
 CONSOLE MESSAGE: line 235: Blocked a frame with origin "http://127.0.0.1:8000" from accessing a frame with origin "http://localhost:8000". Protocols, domains, and ports must match.
 CONSOLE MESSAGE: line 236: Blocked a frame with origin "http://127.0.0.1:8000" from accessing a frame with origin "http://localhost:8000". Protocols, domains, and ports must match.
-CONSOLE MESSAGE: line 237: Blocked a frame with origin "http://127.0.0.1:8000" from accessing a frame with origin "http://localhost:8000". Protocols, domains, and ports must match.
 This test checks cross-frame access security of window attribute setters (rdar://problem/5326791).
 
 
index b3bc88a..c3dab4d 100644 (file)
@@ -114,7 +114,6 @@ function test() {
     setForbiddenProperty(targetWindow, "ProcessingInstruction");
     setForbiddenProperty(targetWindow, "Range");
     setForbiddenProperty(targetWindow, "RangeError");
-    setForbiddenProperty(targetWindow, "RangeException");
     setForbiddenProperty(targetWindow, "ReferenceError");
     setForbiddenProperty(targetWindow, "SyntaxError");
     setForbiddenProperty(targetWindow, "Text");
index bc8e512..7a04fea 100644 (file)
@@ -15,7 +15,7 @@ PASS Historical DOM features must be removed: NameList
 PASS Historical DOM features must be removed: Notation 
 PASS Historical DOM features must be removed: TypeInfo 
 PASS Historical DOM features must be removed: UserDataHandler 
-FAIL Historical DOM features must be removed: RangeException assert_equals: expected (undefined) undefined but got (object) object "[object RangeExceptionConstructor]"
+PASS Historical DOM features must be removed: RangeException 
 FAIL Historical DOM features must be removed: createCDATASection assert_equals: expected (undefined) undefined but got (function) function "function createCDATASection() {
     [native code]
 }"
index 2dccc67..e7b09d0 100644 (file)
@@ -4979,366 +4979,186 @@ PASS Point 82 [xmlDocfrag, 0], range 56 [detachedComment, 5, detachedComment, 5]
 PASS Point 82 [xmlDocfrag, 0], range 57 [detachedForeignComment, 4, detachedForeignComment, 4] 
 PASS Point 82 [xmlDocfrag, 0], range 58 [foreignDocfrag, 0, foreignDocfrag, 0] 
 PASS Point 82 [xmlDocfrag, 0], range 59 [xmlDocfrag, 0, xmlDocfrag, 0] 
-FAIL Point 83 [doctype, 0], range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 10 [document.documentElement, 0, document.documentElement, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 11 [document.documentElement, 0, document.documentElement, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 12 [document.documentElement, 1, document.documentElement, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 13 [document.head, 1, document.head, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 14 [document.body, 4, document.body, 5] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 16 [paras[0], 0, paras[0], 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 17 [detachedPara1, 0, detachedPara1, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 20 [paras[0].firstChild, 3, paras[3], 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 21 [paras[0], 0, paras[0].firstChild, 7] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 22 [testDiv, 2, paras[4], 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 23 [document, 0, document, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 24 [document, 0, document, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 25 [comment, 2, comment, 3] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 26 [testDiv, 0, comment, 5] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 27 [foreignDoc, 1, foreignComment, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 28 [foreignDoc.body, 0, foreignTextNode, 36] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 29 [xmlDoc, 1, xmlComment, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 30 [detachedTextNode, 0, detachedTextNode, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 33 [detachedComment, 3, detachedComment, 4] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 34 [detachedForeignComment, 0, detachedForeignComment, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 35 [detachedXmlComment, 2, detachedXmlComment, 6] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 36 [docfrag, 0, docfrag, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 37 [processingInstruction, 0, processingInstruction, 4] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 38 [paras[1].firstChild, 0, paras[1].firstChild, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 39 [paras[1].firstChild, 2, paras[1].firstChild, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 40 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 41 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 42 [foreignDoc.head, 1, foreignDoc.head, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 43 [foreignDoc.body, 0, foreignDoc.body, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 44 [paras[0], 0, paras[0], 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 45 [detachedPara1, 0, detachedPara1, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 46 [testDiv, 1, paras[2].firstChild, 5] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 47 [document.documentElement, 1, document.body, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 48 [foreignDoc.documentElement, 1, foreignDoc.body, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 49 [document, 1, document, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 50 [paras[2].firstChild, 4, comment, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 51 [paras[3], 1, comment, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 52 [foreignDoc, 0, foreignDoc, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 53 [xmlDoc, 0, xmlDoc, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 54 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 55 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 56 [detachedComment, 5, detachedComment, 5] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 57 [detachedForeignComment, 4, detachedForeignComment, 4] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 58 [foreignDocfrag, 0, foreignDocfrag, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 59 [xmlDocfrag, 0, xmlDocfrag, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 10 [document.documentElement, 0, document.documentElement, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 11 [document.documentElement, 0, document.documentElement, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 12 [document.documentElement, 1, document.documentElement, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 13 [document.head, 1, document.head, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 14 [document.body, 4, document.body, 5] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 16 [paras[0], 0, paras[0], 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 17 [detachedPara1, 0, detachedPara1, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 20 [paras[0].firstChild, 3, paras[3], 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 21 [paras[0], 0, paras[0].firstChild, 7] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 22 [testDiv, 2, paras[4], 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 23 [document, 0, document, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 24 [document, 0, document, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 25 [comment, 2, comment, 3] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 26 [testDiv, 0, comment, 5] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 27 [foreignDoc, 1, foreignComment, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 28 [foreignDoc.body, 0, foreignTextNode, 36] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 29 [xmlDoc, 1, xmlComment, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 30 [detachedTextNode, 0, detachedTextNode, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 33 [detachedComment, 3, detachedComment, 4] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 34 [detachedForeignComment, 0, detachedForeignComment, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 35 [detachedXmlComment, 2, detachedXmlComment, 6] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 36 [docfrag, 0, docfrag, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 37 [processingInstruction, 0, processingInstruction, 4] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 38 [paras[1].firstChild, 0, paras[1].firstChild, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 39 [paras[1].firstChild, 2, paras[1].firstChild, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 40 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 41 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 42 [foreignDoc.head, 1, foreignDoc.head, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 43 [foreignDoc.body, 0, foreignDoc.body, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 44 [paras[0], 0, paras[0], 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 45 [detachedPara1, 0, detachedPara1, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 46 [testDiv, 1, paras[2].firstChild, 5] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 47 [document.documentElement, 1, document.body, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 48 [foreignDoc.documentElement, 1, foreignDoc.body, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 49 [document, 1, document, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 50 [paras[2].firstChild, 4, comment, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 51 [paras[3], 1, comment, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 52 [foreignDoc, 0, foreignDoc, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 53 [xmlDoc, 0, xmlDoc, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 54 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 55 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 56 [detachedComment, 5, detachedComment, 5] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 57 [detachedForeignComment, 4, detachedForeignComment, 4] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 58 [foreignDocfrag, 0, foreignDocfrag, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 59 [xmlDocfrag, 0, xmlDocfrag, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 10 [document.documentElement, 0, document.documentElement, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 11 [document.documentElement, 0, document.documentElement, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 12 [document.documentElement, 1, document.documentElement, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 13 [document.head, 1, document.head, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 14 [document.body, 4, document.body, 5] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 16 [paras[0], 0, paras[0], 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 17 [detachedPara1, 0, detachedPara1, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 20 [paras[0].firstChild, 3, paras[3], 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 21 [paras[0], 0, paras[0].firstChild, 7] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 22 [testDiv, 2, paras[4], 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 23 [document, 0, document, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 24 [document, 0, document, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 25 [comment, 2, comment, 3] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 26 [testDiv, 0, comment, 5] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 27 [foreignDoc, 1, foreignComment, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 28 [foreignDoc.body, 0, foreignTextNode, 36] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 29 [xmlDoc, 1, xmlComment, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 30 [detachedTextNode, 0, detachedTextNode, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 33 [detachedComment, 3, detachedComment, 4] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 34 [detachedForeignComment, 0, detachedForeignComment, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 35 [detachedXmlComment, 2, detachedXmlComment, 6] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 36 [docfrag, 0, docfrag, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 37 [processingInstruction, 0, processingInstruction, 4] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 38 [paras[1].firstChild, 0, paras[1].firstChild, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 39 [paras[1].firstChild, 2, paras[1].firstChild, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 40 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 41 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 42 [foreignDoc.head, 1, foreignDoc.head, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 43 [foreignDoc.body, 0, foreignDoc.body, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 44 [paras[0], 0, paras[0], 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 45 [detachedPara1, 0, detachedPara1, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 46 [testDiv, 1, paras[2].firstChild, 5] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 47 [document.documentElement, 1, document.body, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 48 [foreignDoc.documentElement, 1, foreignDoc.body, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 49 [document, 1, document, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 50 [paras[2].firstChild, 4, comment, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 51 [paras[3], 1, comment, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 52 [foreignDoc, 0, foreignDoc, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 53 [xmlDoc, 0, xmlDoc, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 54 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 55 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 56 [detachedComment, 5, detachedComment, 5] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 57 [detachedForeignComment, 4, detachedForeignComment, 4] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 58 [foreignDocfrag, 0, foreignDocfrag, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 59 [xmlDocfrag, 0, xmlDocfrag, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.comparePoint(node, offset);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS Point 83 [doctype, 0], range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] 
+PASS Point 83 [doctype, 0], range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] 
+PASS Point 83 [doctype, 0], range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] 
+PASS Point 83 [doctype, 0], range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] 
+PASS Point 83 [doctype, 0], range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] 
+PASS Point 83 [doctype, 0], range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9] 
+PASS Point 83 [doctype, 0], range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] 
+PASS Point 83 [doctype, 0], range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] 
+PASS Point 83 [doctype, 0], range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] 
+PASS Point 83 [doctype, 0], range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] 
+PASS Point 83 [doctype, 0], range 10 [document.documentElement, 0, document.documentElement, 1] 
+PASS Point 83 [doctype, 0], range 11 [document.documentElement, 0, document.documentElement, 2] 
+PASS Point 83 [doctype, 0], range 12 [document.documentElement, 1, document.documentElement, 2] 
+PASS Point 83 [doctype, 0], range 13 [document.head, 1, document.head, 1] 
+PASS Point 83 [doctype, 0], range 14 [document.body, 4, document.body, 5] 
+PASS Point 83 [doctype, 0], range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] 
+PASS Point 83 [doctype, 0], range 16 [paras[0], 0, paras[0], 1] 
+PASS Point 83 [doctype, 0], range 17 [detachedPara1, 0, detachedPara1, 1] 
+PASS Point 83 [doctype, 0], range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0] 
+PASS Point 83 [doctype, 0], range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8] 
+PASS Point 83 [doctype, 0], range 20 [paras[0].firstChild, 3, paras[3], 1] 
+PASS Point 83 [doctype, 0], range 21 [paras[0], 0, paras[0].firstChild, 7] 
+PASS Point 83 [doctype, 0], range 22 [testDiv, 2, paras[4], 1] 
+PASS Point 83 [doctype, 0], range 23 [document, 0, document, 1] 
+PASS Point 83 [doctype, 0], range 24 [document, 0, document, 2] 
+PASS Point 83 [doctype, 0], range 25 [comment, 2, comment, 3] 
+PASS Point 83 [doctype, 0], range 26 [testDiv, 0, comment, 5] 
+PASS Point 83 [doctype, 0], range 27 [foreignDoc, 1, foreignComment, 2] 
+PASS Point 83 [doctype, 0], range 28 [foreignDoc.body, 0, foreignTextNode, 36] 
+PASS Point 83 [doctype, 0], range 29 [xmlDoc, 1, xmlComment, 0] 
+PASS Point 83 [doctype, 0], range 30 [detachedTextNode, 0, detachedTextNode, 8] 
+PASS Point 83 [doctype, 0], range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] 
+PASS Point 83 [doctype, 0], range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] 
+PASS Point 83 [doctype, 0], range 33 [detachedComment, 3, detachedComment, 4] 
+PASS Point 83 [doctype, 0], range 34 [detachedForeignComment, 0, detachedForeignComment, 1] 
+PASS Point 83 [doctype, 0], range 35 [detachedXmlComment, 2, detachedXmlComment, 6] 
+PASS Point 83 [doctype, 0], range 36 [docfrag, 0, docfrag, 0] 
+PASS Point 83 [doctype, 0], range 37 [processingInstruction, 0, processingInstruction, 4] 
+PASS Point 83 [doctype, 0], range 38 [paras[1].firstChild, 0, paras[1].firstChild, 1] 
+PASS Point 83 [doctype, 0], range 39 [paras[1].firstChild, 2, paras[1].firstChild, 8] 
+PASS Point 83 [doctype, 0], range 40 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] 
+PASS Point 83 [doctype, 0], range 41 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] 
+PASS Point 83 [doctype, 0], range 42 [foreignDoc.head, 1, foreignDoc.head, 1] 
+PASS Point 83 [doctype, 0], range 43 [foreignDoc.body, 0, foreignDoc.body, 0] 
+PASS Point 83 [doctype, 0], range 44 [paras[0], 0, paras[0], 0] 
+PASS Point 83 [doctype, 0], range 45 [detachedPara1, 0, detachedPara1, 0] 
+PASS Point 83 [doctype, 0], range 46 [testDiv, 1, paras[2].firstChild, 5] 
+PASS Point 83 [doctype, 0], range 47 [document.documentElement, 1, document.body, 0] 
+PASS Point 83 [doctype, 0], range 48 [foreignDoc.documentElement, 1, foreignDoc.body, 0] 
+PASS Point 83 [doctype, 0], range 49 [document, 1, document, 2] 
+PASS Point 83 [doctype, 0], range 50 [paras[2].firstChild, 4, comment, 2] 
+PASS Point 83 [doctype, 0], range 51 [paras[3], 1, comment, 8] 
+PASS Point 83 [doctype, 0], range 52 [foreignDoc, 0, foreignDoc, 0] 
+PASS Point 83 [doctype, 0], range 53 [xmlDoc, 0, xmlDoc, 0] 
+PASS Point 83 [doctype, 0], range 54 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] 
+PASS Point 83 [doctype, 0], range 55 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] 
+PASS Point 83 [doctype, 0], range 56 [detachedComment, 5, detachedComment, 5] 
+PASS Point 83 [doctype, 0], range 57 [detachedForeignComment, 4, detachedForeignComment, 4] 
+PASS Point 83 [doctype, 0], range 58 [foreignDocfrag, 0, foreignDocfrag, 0] 
+PASS Point 83 [doctype, 0], range 59 [xmlDocfrag, 0, xmlDocfrag, 0] 
+PASS Point 84 [doctype, -17], range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] 
+PASS Point 84 [doctype, -17], range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] 
+PASS Point 84 [doctype, -17], range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] 
+PASS Point 84 [doctype, -17], range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] 
+PASS Point 84 [doctype, -17], range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] 
+PASS Point 84 [doctype, -17], range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9] 
+PASS Point 84 [doctype, -17], range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] 
+PASS Point 84 [doctype, -17], range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] 
+PASS Point 84 [doctype, -17], range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] 
+PASS Point 84 [doctype, -17], range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] 
+PASS Point 84 [doctype, -17], range 10 [document.documentElement, 0, document.documentElement, 1] 
+PASS Point 84 [doctype, -17], range 11 [document.documentElement, 0, document.documentElement, 2] 
+PASS Point 84 [doctype, -17], range 12 [document.documentElement, 1, document.documentElement, 2] 
+PASS Point 84 [doctype, -17], range 13 [document.head, 1, document.head, 1] 
+PASS Point 84 [doctype, -17], range 14 [document.body, 4, document.body, 5] 
+PASS Point 84 [doctype, -17], range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] 
+PASS Point 84 [doctype, -17], range 16 [paras[0], 0, paras[0], 1] 
+PASS Point 84 [doctype, -17], range 17 [detachedPara1, 0, detachedPara1, 1] 
+PASS Point 84 [doctype, -17], range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0] 
+PASS Point 84 [doctype, -17], range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8] 
+PASS Point 84 [doctype, -17], range 20 [paras[0].firstChild, 3, paras[3], 1] 
+PASS Point 84 [doctype, -17], range 21 [paras[0], 0, paras[0].firstChild, 7] 
+PASS Point 84 [doctype, -17], range 22 [testDiv, 2, paras[4], 1] 
+PASS Point 84 [doctype, -17], range 23 [document, 0, document, 1] 
+PASS Point 84 [doctype, -17], range 24 [document, 0, document, 2] 
+PASS Point 84 [doctype, -17], range 25 [comment, 2, comment, 3] 
+PASS Point 84 [doctype, -17], range 26 [testDiv, 0, comment, 5] 
+PASS Point 84 [doctype, -17], range 27 [foreignDoc, 1, foreignComment, 2] 
+PASS Point 84 [doctype, -17], range 28 [foreignDoc.body, 0, foreignTextNode, 36] 
+PASS Point 84 [doctype, -17], range 29 [xmlDoc, 1, xmlComment, 0] 
+PASS Point 84 [doctype, -17], range 30 [detachedTextNode, 0, detachedTextNode, 8] 
+PASS Point 84 [doctype, -17], range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] 
+PASS Point 84 [doctype, -17], range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] 
+PASS Point 84 [doctype, -17], range 33 [detachedComment, 3, detachedComment, 4] 
+PASS Point 84 [doctype, -17], range 34 [detachedForeignComment, 0, detachedForeignComment, 1] 
+PASS Point 84 [doctype, -17], range 35 [detachedXmlComment, 2, detachedXmlComment, 6] 
+PASS Point 84 [doctype, -17], range 36 [docfrag, 0, docfrag, 0] 
+PASS Point 84 [doctype, -17], range 37 [processingInstruction, 0, processingInstruction, 4] 
+PASS Point 84 [doctype, -17], range 38 [paras[1].firstChild, 0, paras[1].firstChild, 1] 
+PASS Point 84 [doctype, -17], range 39 [paras[1].firstChild, 2, paras[1].firstChild, 8] 
+PASS Point 84 [doctype, -17], range 40 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] 
+PASS Point 84 [doctype, -17], range 41 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] 
+PASS Point 84 [doctype, -17], range 42 [foreignDoc.head, 1, foreignDoc.head, 1] 
+PASS Point 84 [doctype, -17], range 43 [foreignDoc.body, 0, foreignDoc.body, 0] 
+PASS Point 84 [doctype, -17], range 44 [paras[0], 0, paras[0], 0] 
+PASS Point 84 [doctype, -17], range 45 [detachedPara1, 0, detachedPara1, 0] 
+PASS Point 84 [doctype, -17], range 46 [testDiv, 1, paras[2].firstChild, 5] 
+PASS Point 84 [doctype, -17], range 47 [document.documentElement, 1, document.body, 0] 
+PASS Point 84 [doctype, -17], range 48 [foreignDoc.documentElement, 1, foreignDoc.body, 0] 
+PASS Point 84 [doctype, -17], range 49 [document, 1, document, 2] 
+PASS Point 84 [doctype, -17], range 50 [paras[2].firstChild, 4, comment, 2] 
+PASS Point 84 [doctype, -17], range 51 [paras[3], 1, comment, 8] 
+PASS Point 84 [doctype, -17], range 52 [foreignDoc, 0, foreignDoc, 0] 
+PASS Point 84 [doctype, -17], range 53 [xmlDoc, 0, xmlDoc, 0] 
+PASS Point 84 [doctype, -17], range 54 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] 
+PASS Point 84 [doctype, -17], range 55 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] 
+PASS Point 84 [doctype, -17], range 56 [detachedComment, 5, detachedComment, 5] 
+PASS Point 84 [doctype, -17], range 57 [detachedForeignComment, 4, detachedForeignComment, 4] 
+PASS Point 84 [doctype, -17], range 58 [foreignDocfrag, 0, foreignDocfrag, 0] 
+PASS Point 84 [doctype, -17], range 59 [xmlDocfrag, 0, xmlDocfrag, 0] 
+PASS Point 85 [doctype, 1], range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] 
+PASS Point 85 [doctype, 1], range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] 
+PASS Point 85 [doctype, 1], range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] 
+PASS Point 85 [doctype, 1], range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] 
+PASS Point 85 [doctype, 1], range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] 
+PASS Point 85 [doctype, 1], range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9] 
+PASS Point 85 [doctype, 1], range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] 
+PASS Point 85 [doctype, 1], range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] 
+PASS Point 85 [doctype, 1], range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] 
+PASS Point 85 [doctype, 1], range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] 
+PASS Point 85 [doctype, 1], range 10 [document.documentElement, 0, document.documentElement, 1] 
+PASS Point 85 [doctype, 1], range 11 [document.documentElement, 0, document.documentElement, 2] 
+PASS Point 85 [doctype, 1], range 12 [document.documentElement, 1, document.documentElement, 2] 
+PASS Point 85 [doctype, 1], range 13 [document.head, 1, document.head, 1] 
+PASS Point 85 [doctype, 1], range 14 [document.body, 4, document.body, 5] 
+PASS Point 85 [doctype, 1], range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] 
+PASS Point 85 [doctype, 1], range 16 [paras[0], 0, paras[0], 1] 
+PASS Point 85 [doctype, 1], range 17 [detachedPara1, 0, detachedPara1, 1] 
+PASS Point 85 [doctype, 1], range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0] 
+PASS Point 85 [doctype, 1], range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8] 
+PASS Point 85 [doctype, 1], range 20 [paras[0].firstChild, 3, paras[3], 1] 
+PASS Point 85 [doctype, 1], range 21 [paras[0], 0, paras[0].firstChild, 7] 
+PASS Point 85 [doctype, 1], range 22 [testDiv, 2, paras[4], 1] 
+PASS Point 85 [doctype, 1], range 23 [document, 0, document, 1] 
+PASS Point 85 [doctype, 1], range 24 [document, 0, document, 2] 
+PASS Point 85 [doctype, 1], range 25 [comment, 2, comment, 3] 
+PASS Point 85 [doctype, 1], range 26 [testDiv, 0, comment, 5] 
+PASS Point 85 [doctype, 1], range 27 [foreignDoc, 1, foreignComment, 2] 
+PASS Point 85 [doctype, 1], range 28 [foreignDoc.body, 0, foreignTextNode, 36] 
+PASS Point 85 [doctype, 1], range 29 [xmlDoc, 1, xmlComment, 0] 
+PASS Point 85 [doctype, 1], range 30 [detachedTextNode, 0, detachedTextNode, 8] 
+PASS Point 85 [doctype, 1], range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] 
+PASS Point 85 [doctype, 1], range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] 
+PASS Point 85 [doctype, 1], range 33 [detachedComment, 3, detachedComment, 4] 
+PASS Point 85 [doctype, 1], range 34 [detachedForeignComment, 0, detachedForeignComment, 1] 
+PASS Point 85 [doctype, 1], range 35 [detachedXmlComment, 2, detachedXmlComment, 6] 
+PASS Point 85 [doctype, 1], range 36 [docfrag, 0, docfrag, 0] 
+PASS Point 85 [doctype, 1], range 37 [processingInstruction, 0, processingInstruction, 4] 
+PASS Point 85 [doctype, 1], range 38 [paras[1].firstChild, 0, paras[1].firstChild, 1] 
+PASS Point 85 [doctype, 1], range 39 [paras[1].firstChild, 2, paras[1].firstChild, 8] 
+PASS Point 85 [doctype, 1], range 40 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] 
+PASS Point 85 [doctype, 1], range 41 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] 
+PASS Point 85 [doctype, 1], range 42 [foreignDoc.head, 1, foreignDoc.head, 1] 
+PASS Point 85 [doctype, 1], range 43 [foreignDoc.body, 0, foreignDoc.body, 0] 
+PASS Point 85 [doctype, 1], range 44 [paras[0], 0, paras[0], 0] 
+PASS Point 85 [doctype, 1], range 45 [detachedPara1, 0, detachedPara1, 0] 
+PASS Point 85 [doctype, 1], range 46 [testDiv, 1, paras[2].firstChild, 5] 
+PASS Point 85 [doctype, 1], range 47 [document.documentElement, 1, document.body, 0] 
+PASS Point 85 [doctype, 1], range 48 [foreignDoc.documentElement, 1, foreignDoc.body, 0] 
+PASS Point 85 [doctype, 1], range 49 [document, 1, document, 2] 
+PASS Point 85 [doctype, 1], range 50 [paras[2].firstChild, 4, comment, 2] 
+PASS Point 85 [doctype, 1], range 51 [paras[3], 1, comment, 8] 
+PASS Point 85 [doctype, 1], range 52 [foreignDoc, 0, foreignDoc, 0] 
+PASS Point 85 [doctype, 1], range 53 [xmlDoc, 0, xmlDoc, 0] 
+PASS Point 85 [doctype, 1], range 54 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] 
+PASS Point 85 [doctype, 1], range 55 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] 
+PASS Point 85 [doctype, 1], range 56 [detachedComment, 5, detachedComment, 5] 
+PASS Point 85 [doctype, 1], range 57 [detachedForeignComment, 4, detachedForeignComment, 4] 
+PASS Point 85 [doctype, 1], range 58 [foreignDocfrag, 0, foreignDocfrag, 0] 
+PASS Point 85 [doctype, 1], range 59 [xmlDocfrag, 0, xmlDocfrag, 0] 
 PASS Point 86 [foreignDoctype, 0], range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] 
 PASS Point 86 [foreignDoctype, 0], range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] 
 PASS Point 86 [foreignDoctype, 0], range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] 
index daf6017..af56c37 100644 (file)
@@ -5128,279 +5128,189 @@ PASS Point 82 [xmlDocfrag, 0], range 57 [detachedForeignComment, 4, detachedFore
 PASS Point 82 [xmlDocfrag, 0], range 58 [foreignDocfrag, 0, foreignDocfrag, 0] 
 FAIL Point 82 [xmlDocfrag, 0], range 59 [xmlDocfrag, 0, xmlDocfrag, 0] assert_true: Must return true if point is not before start, after end, or in different tree expected true got false
 PASS Point 82 [xmlDocfrag, 0], range 60 detached 
-FAIL Point 83 [doctype, 0], range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
-FAIL Point 83 [doctype, 0], range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
+PASS Point 83 [doctype, 0], range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] 
+PASS Point 83 [doctype, 0], range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] 
+PASS Point 83 [doctype, 0], range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] 
+PASS Point 83 [doctype, 0], range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] 
+PASS Point 83 [doctype, 0], range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] 
+PASS Point 83 [doctype, 0], range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9] 
+FAIL Point 83 [doctype, 0], range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] InvalidNodeTypeError: DOM Exception 24
+FAIL Point 83 [doctype, 0], range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] InvalidNodeTypeError: DOM Exception 24
 PASS Point 83 [doctype, 0], range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] 
 PASS Point 83 [doctype, 0], range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] 
-FAIL Point 83 [doctype, 0], range 10 [document.documentElement, 0, document.documentElement, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 11 [document.documentElement, 0, document.documentElement, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 12 [document.documentElement, 1, document.documentElement, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 13 [document.head, 1, document.head, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 14 [document.body, 4, document.body, 5] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS Point 83 [doctype, 0], range 10 [document.documentElement, 0, document.documentElement, 1] 
+PASS Point 83 [doctype, 0], range 11 [document.documentElement, 0, document.documentElement, 2] 
+PASS Point 83 [doctype, 0], range 12 [document.documentElement, 1, document.documentElement, 2] 
+PASS Point 83 [doctype, 0], range 13 [document.head, 1, document.head, 1] 
+PASS Point 83 [doctype, 0], range 14 [document.body, 4, document.body, 5] 
 PASS Point 83 [doctype, 0], range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] 
-FAIL Point 83 [doctype, 0], range 16 [paras[0], 0, paras[0], 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 17 [detachedPara1, 0, detachedPara1, 1] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
-FAIL Point 83 [doctype, 0], range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 20 [paras[0].firstChild, 3, paras[3], 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 21 [paras[0], 0, paras[0].firstChild, 7] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 22 [testDiv, 2, paras[4], 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 23 [document, 0, document, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 24 [document, 0, document, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 25 [comment, 2, comment, 3] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 26 [testDiv, 0, comment, 5] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS Point 83 [doctype, 0], range 16 [paras[0], 0, paras[0], 1] 
+FAIL Point 83 [doctype, 0], range 17 [detachedPara1, 0, detachedPara1, 1] InvalidNodeTypeError: DOM Exception 24
+PASS Point 83 [doctype, 0], range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0] 
+PASS Point 83 [doctype, 0], range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8] 
+PASS Point 83 [doctype, 0], range 20 [paras[0].firstChild, 3, paras[3], 1] 
+PASS Point 83 [doctype, 0], range 21 [paras[0], 0, paras[0].firstChild, 7] 
+PASS Point 83 [doctype, 0], range 22 [testDiv, 2, paras[4], 1] 
+PASS Point 83 [doctype, 0], range 23 [document, 0, document, 1] 
+PASS Point 83 [doctype, 0], range 24 [document, 0, document, 2] 
+PASS Point 83 [doctype, 0], range 25 [comment, 2, comment, 3] 
+PASS Point 83 [doctype, 0], range 26 [testDiv, 0, comment, 5] 
 PASS Point 83 [doctype, 0], range 27 [foreignDoc, 1, foreignComment, 2] 
 PASS Point 83 [doctype, 0], range 28 [foreignDoc.body, 0, foreignTextNode, 36] 
 PASS Point 83 [doctype, 0], range 29 [xmlDoc, 1, xmlComment, 0] 
-FAIL Point 83 [doctype, 0], range 30 [detachedTextNode, 0, detachedTextNode, 8] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
+FAIL Point 83 [doctype, 0], range 30 [detachedTextNode, 0, detachedTextNode, 8] InvalidNodeTypeError: DOM Exception 24
 PASS Point 83 [doctype, 0], range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] 
 PASS Point 83 [doctype, 0], range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] 
-FAIL Point 83 [doctype, 0], range 33 [detachedComment, 3, detachedComment, 4] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
+FAIL Point 83 [doctype, 0], range 33 [detachedComment, 3, detachedComment, 4] InvalidNodeTypeError: DOM Exception 24
 PASS Point 83 [doctype, 0], range 34 [detachedForeignComment, 0, detachedForeignComment, 1] 
 PASS Point 83 [doctype, 0], range 35 [detachedXmlComment, 2, detachedXmlComment, 6] 
-FAIL Point 83 [doctype, 0], range 36 [docfrag, 0, docfrag, 0] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
+FAIL Point 83 [doctype, 0], range 36 [docfrag, 0, docfrag, 0] InvalidNodeTypeError: DOM Exception 24
 PASS Point 83 [doctype, 0], range 37 [processingInstruction, 0, processingInstruction, 4] 
-FAIL Point 83 [doctype, 0], range 38 [paras[1].firstChild, 0, paras[1].firstChild, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 39 [paras[1].firstChild, 2, paras[1].firstChild, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 40 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
+PASS Point 83 [doctype, 0], range 38 [paras[1].firstChild, 0, paras[1].firstChild, 1] 
+PASS Point 83 [doctype, 0], range 39 [paras[1].firstChild, 2, paras[1].firstChild, 8] 
+FAIL Point 83 [doctype, 0], range 40 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] InvalidNodeTypeError: DOM Exception 24
 PASS Point 83 [doctype, 0], range 41 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] 
 PASS Point 83 [doctype, 0], range 42 [foreignDoc.head, 1, foreignDoc.head, 1] 
 PASS Point 83 [doctype, 0], range 43 [foreignDoc.body, 0, foreignDoc.body, 0] 
-FAIL Point 83 [doctype, 0], range 44 [paras[0], 0, paras[0], 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 45 [detachedPara1, 0, detachedPara1, 0] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
-FAIL Point 83 [doctype, 0], range 46 [testDiv, 1, paras[2].firstChild, 5] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 47 [document.documentElement, 1, document.body, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS Point 83 [doctype, 0], range 44 [paras[0], 0, paras[0], 0] 
+FAIL Point 83 [doctype, 0], range 45 [detachedPara1, 0, detachedPara1, 0] InvalidNodeTypeError: DOM Exception 24
+PASS Point 83 [doctype, 0], range 46 [testDiv, 1, paras[2].firstChild, 5] 
+PASS Point 83 [doctype, 0], range 47 [document.documentElement, 1, document.body, 0] 
 PASS Point 83 [doctype, 0], range 48 [foreignDoc.documentElement, 1, foreignDoc.body, 0] 
-FAIL Point 83 [doctype, 0], range 49 [document, 1, document, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 50 [paras[2].firstChild, 4, comment, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 83 [doctype, 0], range 51 [paras[3], 1, comment, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS Point 83 [doctype, 0], range 49 [document, 1, document, 2] 
+PASS Point 83 [doctype, 0], range 50 [paras[2].firstChild, 4, comment, 2] 
+PASS Point 83 [doctype, 0], range 51 [paras[3], 1, comment, 8] 
 PASS Point 83 [doctype, 0], range 52 [foreignDoc, 0, foreignDoc, 0] 
 PASS Point 83 [doctype, 0], range 53 [xmlDoc, 0, xmlDoc, 0] 
 PASS Point 83 [doctype, 0], range 54 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] 
 PASS Point 83 [doctype, 0], range 55 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] 
-FAIL Point 83 [doctype, 0], range 56 [detachedComment, 5, detachedComment, 5] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
+FAIL Point 83 [doctype, 0], range 56 [detachedComment, 5, detachedComment, 5] InvalidNodeTypeError: DOM Exception 24
 PASS Point 83 [doctype, 0], range 57 [detachedForeignComment, 4, detachedForeignComment, 4] 
 PASS Point 83 [doctype, 0], range 58 [foreignDocfrag, 0, foreignDocfrag, 0] 
 PASS Point 83 [doctype, 0], range 59 [xmlDocfrag, 0, xmlDocfrag, 0] 
-FAIL Point 83 [doctype, 0], range 60 detached assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
-FAIL Point 84 [doctype, -17], range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
+PASS Point 83 [doctype, 0], range 60 detached 
+PASS Point 84 [doctype, -17], range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] 
+PASS Point 84 [doctype, -17], range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] 
+PASS Point 84 [doctype, -17], range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] 
+PASS Point 84 [doctype, -17], range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] 
+PASS Point 84 [doctype, -17], range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] 
+PASS Point 84 [doctype, -17], range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9] 
+FAIL Point 84 [doctype, -17], range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] InvalidNodeTypeError: DOM Exception 24
+FAIL Point 84 [doctype, -17], range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] InvalidNodeTypeError: DOM Exception 24
 PASS Point 84 [doctype, -17], range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] 
 PASS Point 84 [doctype, -17], range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] 
-FAIL Point 84 [doctype, -17], range 10 [document.documentElement, 0, document.documentElement, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 11 [document.documentElement, 0, document.documentElement, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 12 [document.documentElement, 1, document.documentElement, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 13 [document.head, 1, document.head, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 14 [document.body, 4, document.body, 5] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS Point 84 [doctype, -17], range 10 [document.documentElement, 0, document.documentElement, 1] 
+PASS Point 84 [doctype, -17], range 11 [document.documentElement, 0, document.documentElement, 2] 
+PASS Point 84 [doctype, -17], range 12 [document.documentElement, 1, document.documentElement, 2] 
+PASS Point 84 [doctype, -17], range 13 [document.head, 1, document.head, 1] 
+PASS Point 84 [doctype, -17], range 14 [document.body, 4, document.body, 5] 
 PASS Point 84 [doctype, -17], range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] 
-FAIL Point 84 [doctype, -17], range 16 [paras[0], 0, paras[0], 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 17 [detachedPara1, 0, detachedPara1, 1] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
-FAIL Point 84 [doctype, -17], range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 20 [paras[0].firstChild, 3, paras[3], 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 21 [paras[0], 0, paras[0].firstChild, 7] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 22 [testDiv, 2, paras[4], 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 23 [document, 0, document, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 24 [document, 0, document, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 25 [comment, 2, comment, 3] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 26 [testDiv, 0, comment, 5] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS Point 84 [doctype, -17], range 16 [paras[0], 0, paras[0], 1] 
+FAIL Point 84 [doctype, -17], range 17 [detachedPara1, 0, detachedPara1, 1] InvalidNodeTypeError: DOM Exception 24
+PASS Point 84 [doctype, -17], range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0] 
+PASS Point 84 [doctype, -17], range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8] 
+PASS Point 84 [doctype, -17], range 20 [paras[0].firstChild, 3, paras[3], 1] 
+PASS Point 84 [doctype, -17], range 21 [paras[0], 0, paras[0].firstChild, 7] 
+PASS Point 84 [doctype, -17], range 22 [testDiv, 2, paras[4], 1] 
+PASS Point 84 [doctype, -17], range 23 [document, 0, document, 1] 
+PASS Point 84 [doctype, -17], range 24 [document, 0, document, 2] 
+PASS Point 84 [doctype, -17], range 25 [comment, 2, comment, 3] 
+PASS Point 84 [doctype, -17], range 26 [testDiv, 0, comment, 5] 
 PASS Point 84 [doctype, -17], range 27 [foreignDoc, 1, foreignComment, 2] 
 PASS Point 84 [doctype, -17], range 28 [foreignDoc.body, 0, foreignTextNode, 36] 
 PASS Point 84 [doctype, -17], range 29 [xmlDoc, 1, xmlComment, 0] 
-FAIL Point 84 [doctype, -17], range 30 [detachedTextNode, 0, detachedTextNode, 8] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
+FAIL Point 84 [doctype, -17], range 30 [detachedTextNode, 0, detachedTextNode, 8] InvalidNodeTypeError: DOM Exception 24
 PASS Point 84 [doctype, -17], range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] 
 PASS Point 84 [doctype, -17], range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] 
-FAIL Point 84 [doctype, -17], range 33 [detachedComment, 3, detachedComment, 4] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
+FAIL Point 84 [doctype, -17], range 33 [detachedComment, 3, detachedComment, 4] InvalidNodeTypeError: DOM Exception 24
 PASS Point 84 [doctype, -17], range 34 [detachedForeignComment, 0, detachedForeignComment, 1] 
 PASS Point 84 [doctype, -17], range 35 [detachedXmlComment, 2, detachedXmlComment, 6] 
-FAIL Point 84 [doctype, -17], range 36 [docfrag, 0, docfrag, 0] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
+FAIL Point 84 [doctype, -17], range 36 [docfrag, 0, docfrag, 0] InvalidNodeTypeError: DOM Exception 24
 PASS Point 84 [doctype, -17], range 37 [processingInstruction, 0, processingInstruction, 4] 
-FAIL Point 84 [doctype, -17], range 38 [paras[1].firstChild, 0, paras[1].firstChild, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 39 [paras[1].firstChild, 2, paras[1].firstChild, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 40 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
+PASS Point 84 [doctype, -17], range 38 [paras[1].firstChild, 0, paras[1].firstChild, 1] 
+PASS Point 84 [doctype, -17], range 39 [paras[1].firstChild, 2, paras[1].firstChild, 8] 
+FAIL Point 84 [doctype, -17], range 40 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] InvalidNodeTypeError: DOM Exception 24
 PASS Point 84 [doctype, -17], range 41 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] 
 PASS Point 84 [doctype, -17], range 42 [foreignDoc.head, 1, foreignDoc.head, 1] 
 PASS Point 84 [doctype, -17], range 43 [foreignDoc.body, 0, foreignDoc.body, 0] 
-FAIL Point 84 [doctype, -17], range 44 [paras[0], 0, paras[0], 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 45 [detachedPara1, 0, detachedPara1, 0] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
-FAIL Point 84 [doctype, -17], range 46 [testDiv, 1, paras[2].firstChild, 5] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 47 [document.documentElement, 1, document.body, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS Point 84 [doctype, -17], range 44 [paras[0], 0, paras[0], 0] 
+FAIL Point 84 [doctype, -17], range 45 [detachedPara1, 0, detachedPara1, 0] InvalidNodeTypeError: DOM Exception 24
+PASS Point 84 [doctype, -17], range 46 [testDiv, 1, paras[2].firstChild, 5] 
+PASS Point 84 [doctype, -17], range 47 [document.documentElement, 1, document.body, 0] 
 PASS Point 84 [doctype, -17], range 48 [foreignDoc.documentElement, 1, foreignDoc.body, 0] 
-FAIL Point 84 [doctype, -17], range 49 [document, 1, document, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 50 [paras[2].firstChild, 4, comment, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 84 [doctype, -17], range 51 [paras[3], 1, comment, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS Point 84 [doctype, -17], range 49 [document, 1, document, 2] 
+PASS Point 84 [doctype, -17], range 50 [paras[2].firstChild, 4, comment, 2] 
+PASS Point 84 [doctype, -17], range 51 [paras[3], 1, comment, 8] 
 PASS Point 84 [doctype, -17], range 52 [foreignDoc, 0, foreignDoc, 0] 
 PASS Point 84 [doctype, -17], range 53 [xmlDoc, 0, xmlDoc, 0] 
 PASS Point 84 [doctype, -17], range 54 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] 
 PASS Point 84 [doctype, -17], range 55 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] 
-FAIL Point 84 [doctype, -17], range 56 [detachedComment, 5, detachedComment, 5] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
+FAIL Point 84 [doctype, -17], range 56 [detachedComment, 5, detachedComment, 5] InvalidNodeTypeError: DOM Exception 24
 PASS Point 84 [doctype, -17], range 57 [detachedForeignComment, 4, detachedForeignComment, 4] 
 PASS Point 84 [doctype, -17], range 58 [foreignDocfrag, 0, foreignDocfrag, 0] 
 PASS Point 84 [doctype, -17], range 59 [xmlDocfrag, 0, xmlDocfrag, 0] 
-FAIL Point 84 [doctype, -17], range 60 detached assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
-FAIL Point 85 [doctype, 1], range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
+PASS Point 84 [doctype, -17], range 60 detached 
+PASS Point 85 [doctype, 1], range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] 
+PASS Point 85 [doctype, 1], range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] 
+PASS Point 85 [doctype, 1], range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] 
+PASS Point 85 [doctype, 1], range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] 
+PASS Point 85 [doctype, 1], range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] 
+PASS Point 85 [doctype, 1], range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9] 
+FAIL Point 85 [doctype, 1], range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] InvalidNodeTypeError: DOM Exception 24
+FAIL Point 85 [doctype, 1], range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] InvalidNodeTypeError: DOM Exception 24
 PASS Point 85 [doctype, 1], range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] 
 PASS Point 85 [doctype, 1], range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] 
-FAIL Point 85 [doctype, 1], range 10 [document.documentElement, 0, document.documentElement, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 11 [document.documentElement, 0, document.documentElement, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 12 [document.documentElement, 1, document.documentElement, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 13 [document.head, 1, document.head, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 14 [document.body, 4, document.body, 5] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS Point 85 [doctype, 1], range 10 [document.documentElement, 0, document.documentElement, 1] 
+PASS Point 85 [doctype, 1], range 11 [document.documentElement, 0, document.documentElement, 2] 
+PASS Point 85 [doctype, 1], range 12 [document.documentElement, 1, document.documentElement, 2] 
+PASS Point 85 [doctype, 1], range 13 [document.head, 1, document.head, 1] 
+PASS Point 85 [doctype, 1], range 14 [document.body, 4, document.body, 5] 
 PASS Point 85 [doctype, 1], range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] 
-FAIL Point 85 [doctype, 1], range 16 [paras[0], 0, paras[0], 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 17 [detachedPara1, 0, detachedPara1, 1] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
-FAIL Point 85 [doctype, 1], range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 20 [paras[0].firstChild, 3, paras[3], 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 21 [paras[0], 0, paras[0].firstChild, 7] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 22 [testDiv, 2, paras[4], 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 23 [document, 0, document, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 24 [document, 0, document, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 25 [comment, 2, comment, 3] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 26 [testDiv, 0, comment, 5] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS Point 85 [doctype, 1], range 16 [paras[0], 0, paras[0], 1] 
+FAIL Point 85 [doctype, 1], range 17 [detachedPara1, 0, detachedPara1, 1] InvalidNodeTypeError: DOM Exception 24
+PASS Point 85 [doctype, 1], range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0] 
+PASS Point 85 [doctype, 1], range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8] 
+PASS Point 85 [doctype, 1], range 20 [paras[0].firstChild, 3, paras[3], 1] 
+PASS Point 85 [doctype, 1], range 21 [paras[0], 0, paras[0].firstChild, 7] 
+PASS Point 85 [doctype, 1], range 22 [testDiv, 2, paras[4], 1] 
+PASS Point 85 [doctype, 1], range 23 [document, 0, document, 1] 
+PASS Point 85 [doctype, 1], range 24 [document, 0, document, 2] 
+PASS Point 85 [doctype, 1], range 25 [comment, 2, comment, 3] 
+PASS Point 85 [doctype, 1], range 26 [testDiv, 0, comment, 5] 
 PASS Point 85 [doctype, 1], range 27 [foreignDoc, 1, foreignComment, 2] 
 PASS Point 85 [doctype, 1], range 28 [foreignDoc.body, 0, foreignTextNode, 36] 
 PASS Point 85 [doctype, 1], range 29 [xmlDoc, 1, xmlComment, 0] 
-FAIL Point 85 [doctype, 1], range 30 [detachedTextNode, 0, detachedTextNode, 8] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
+FAIL Point 85 [doctype, 1], range 30 [detachedTextNode, 0, detachedTextNode, 8] InvalidNodeTypeError: DOM Exception 24
 PASS Point 85 [doctype, 1], range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] 
 PASS Point 85 [doctype, 1], range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] 
-FAIL Point 85 [doctype, 1], range 33 [detachedComment, 3, detachedComment, 4] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
+FAIL Point 85 [doctype, 1], range 33 [detachedComment, 3, detachedComment, 4] InvalidNodeTypeError: DOM Exception 24
 PASS Point 85 [doctype, 1], range 34 [detachedForeignComment, 0, detachedForeignComment, 1] 
 PASS Point 85 [doctype, 1], range 35 [detachedXmlComment, 2, detachedXmlComment, 6] 
-FAIL Point 85 [doctype, 1], range 36 [docfrag, 0, docfrag, 0] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
+FAIL Point 85 [doctype, 1], range 36 [docfrag, 0, docfrag, 0] InvalidNodeTypeError: DOM Exception 24
 PASS Point 85 [doctype, 1], range 37 [processingInstruction, 0, processingInstruction, 4] 
-FAIL Point 85 [doctype, 1], range 38 [paras[1].firstChild, 0, paras[1].firstChild, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 39 [paras[1].firstChild, 2, paras[1].firstChild, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 40 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
+PASS Point 85 [doctype, 1], range 38 [paras[1].firstChild, 0, paras[1].firstChild, 1] 
+PASS Point 85 [doctype, 1], range 39 [paras[1].firstChild, 2, paras[1].firstChild, 8] 
+FAIL Point 85 [doctype, 1], range 40 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] InvalidNodeTypeError: DOM Exception 24
 PASS Point 85 [doctype, 1], range 41 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] 
 PASS Point 85 [doctype, 1], range 42 [foreignDoc.head, 1, foreignDoc.head, 1] 
 PASS Point 85 [doctype, 1], range 43 [foreignDoc.body, 0, foreignDoc.body, 0] 
-FAIL Point 85 [doctype, 1], range 44 [paras[0], 0, paras[0], 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 45 [detachedPara1, 0, detachedPara1, 0] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
-FAIL Point 85 [doctype, 1], range 46 [testDiv, 1, paras[2].firstChild, 5] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 47 [document.documentElement, 1, document.body, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS Point 85 [doctype, 1], range 44 [paras[0], 0, paras[0], 0] 
+FAIL Point 85 [doctype, 1], range 45 [detachedPara1, 0, detachedPara1, 0] InvalidNodeTypeError: DOM Exception 24
+PASS Point 85 [doctype, 1], range 46 [testDiv, 1, paras[2].firstChild, 5] 
+PASS Point 85 [doctype, 1], range 47 [document.documentElement, 1, document.body, 0] 
 PASS Point 85 [doctype, 1], range 48 [foreignDoc.documentElement, 1, foreignDoc.body, 0] 
-FAIL Point 85 [doctype, 1], range 49 [document, 1, document, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 50 [paras[2].firstChild, 4, comment, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 85 [doctype, 1], range 51 [paras[3], 1, comment, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS Point 85 [doctype, 1], range 49 [document, 1, document, 2] 
+PASS Point 85 [doctype, 1], range 50 [paras[2].firstChild, 4, comment, 2] 
+PASS Point 85 [doctype, 1], range 51 [paras[3], 1, comment, 8] 
 PASS Point 85 [doctype, 1], range 52 [foreignDoc, 0, foreignDoc, 0] 
 PASS Point 85 [doctype, 1], range 53 [xmlDoc, 0, xmlDoc, 0] 
 PASS Point 85 [doctype, 1], range 54 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] 
 PASS Point 85 [doctype, 1], range 55 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] 
-FAIL Point 85 [doctype, 1], range 56 [detachedComment, 5, detachedComment, 5] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
+FAIL Point 85 [doctype, 1], range 56 [detachedComment, 5, detachedComment, 5] InvalidNodeTypeError: DOM Exception 24
 PASS Point 85 [doctype, 1], range 57 [detachedForeignComment, 4, detachedForeignComment, 4] 
 PASS Point 85 [doctype, 1], range 58 [foreignDocfrag, 0, foreignDocfrag, 0] 
 PASS Point 85 [doctype, 1], range 59 [xmlDocfrag, 0, xmlDocfrag, 0] 
-FAIL Point 85 [doctype, 1], range 60 detached assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS Point 85 [doctype, 1], range 60 detached 
 PASS Point 86 [foreignDoctype, 0], range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] 
 PASS Point 86 [foreignDoctype, 0], range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] 
 PASS Point 86 [foreignDoctype, 0], range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] 
@@ -5409,17 +5319,14 @@ PASS Point 86 [foreignDoctype, 0], range 4 [paras[1].firstChild, 0, paras[1].fir
 PASS Point 86 [foreignDoctype, 0], range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9] 
 PASS Point 86 [foreignDoctype, 0], range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] 
 PASS Point 86 [foreignDoctype, 0], range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] 
-FAIL Point 86 [foreignDoctype, 0], range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 86 [foreignDoctype, 0], range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS Point 86 [foreignDoctype, 0], range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] 
+PASS Point 86 [foreignDoctype, 0], range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] 
 PASS Point 86 [foreignDoctype, 0], range 10 [document.documentElement, 0, document.documentElement, 1] 
 PASS Point 86 [foreignDoctype, 0], range 11 [document.documentElement, 0, document.documentElement, 2] 
 PASS Point 86 [foreignDoctype, 0], range 12 [document.documentElement, 1, document.documentElement, 2] 
 PASS Point 86 [foreignDoctype, 0], range 13 [document.head, 1, document.head, 1] 
 PASS Point 86 [foreignDoctype, 0], range 14 [document.body, 4, document.body, 5] 
-FAIL Point 86 [foreignDoctype, 0], range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS Point 86 [foreignDoctype, 0], range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] 
 PASS Point 86 [foreignDoctype, 0], range 16 [paras[0], 0, paras[0], 1] 
 PASS Point 86 [foreignDoctype, 0], range 17 [detachedPara1, 0, detachedPara1, 1] 
 PASS Point 86 [foreignDoctype, 0], range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0] 
@@ -5431,45 +5338,38 @@ PASS Point 86 [foreignDoctype, 0], range 23 [document, 0, document, 1]
 PASS Point 86 [foreignDoctype, 0], range 24 [document, 0, document, 2] 
 PASS Point 86 [foreignDoctype, 0], range 25 [comment, 2, comment, 3] 
 PASS Point 86 [foreignDoctype, 0], range 26 [testDiv, 0, comment, 5] 
-FAIL Point 86 [foreignDoctype, 0], range 27 [foreignDoc, 1, foreignComment, 2] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 86 [foreignDoctype, 0], range 28 [foreignDoc.body, 0, foreignTextNode, 36] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS Point 86 [foreignDoctype, 0], range 27 [foreignDoc, 1, foreignComment, 2] 
+PASS Point 86 [foreignDoctype, 0], range 28 [foreignDoc.body, 0, foreignTextNode, 36] 
 PASS Point 86 [foreignDoctype, 0], range 29 [xmlDoc, 1, xmlComment, 0] 
 PASS Point 86 [foreignDoctype, 0], range 30 [detachedTextNode, 0, detachedTextNode, 8] 
-FAIL Point 86 [foreignDoctype, 0], range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
+FAIL Point 86 [foreignDoctype, 0], range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] InvalidNodeTypeError: DOM Exception 24
 PASS Point 86 [foreignDoctype, 0], range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] 
 PASS Point 86 [foreignDoctype, 0], range 33 [detachedComment, 3, detachedComment, 4] 
-FAIL Point 86 [foreignDoctype, 0], range 34 [detachedForeignComment, 0, detachedForeignComment, 1] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
+FAIL Point 86 [foreignDoctype, 0], range 34 [detachedForeignComment, 0, detachedForeignComment, 1] InvalidNodeTypeError: DOM Exception 24
 PASS Point 86 [foreignDoctype, 0], range 35 [detachedXmlComment, 2, detachedXmlComment, 6] 
 PASS Point 86 [foreignDoctype, 0], range 36 [docfrag, 0, docfrag, 0] 
 PASS Point 86 [foreignDoctype, 0], range 37 [processingInstruction, 0, processingInstruction, 4] 
 PASS Point 86 [foreignDoctype, 0], range 38 [paras[1].firstChild, 0, paras[1].firstChild, 1] 
 PASS Point 86 [foreignDoctype, 0], range 39 [paras[1].firstChild, 2, paras[1].firstChild, 8] 
 PASS Point 86 [foreignDoctype, 0], range 40 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] 
-FAIL Point 86 [foreignDoctype, 0], range 41 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 86 [foreignDoctype, 0], range 42 [foreignDoc.head, 1, foreignDoc.head, 1] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL Point 86 [foreignDoctype, 0], range 43 [foreignDoc.body, 0, foreignDoc.body, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS Point 86 [foreignDoctype, 0], range 41 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] 
+PASS Point 86 [foreignDoctype, 0], range 42 [foreignDoc.head, 1, foreignDoc.head, 1] 
+PASS Point 86 [foreignDoctype, 0], range 43 [foreignDoc.body, 0, foreignDoc.body, 0] 
 PASS Point 86 [foreignDoctype, 0], range 44 [paras[0], 0, paras[0], 0] 
 PASS Point 86 [foreignDoctype, 0], range 45 [detachedPara1, 0, detachedPara1, 0] 
 PASS Point 86 [foreignDoctype, 0], range 46 [testDiv, 1, paras[2].firstChild, 5] 
 PASS Point 86 [foreignDoctype, 0], range 47 [document.documentElement, 1, document.body, 0] 
-FAIL Point 86 [foreignDoctype, 0], range 48 [foreignDoc.documentElement, 1, foreignDoc.body, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS Point 86 [foreignDoctype, 0], range 48 [foreignDoc.documentElement, 1, foreignDoc.body, 0] 
 PASS Point 86 [foreignDoctype, 0], range 49 [document, 1, document, 2] 
 PASS Point 86 [foreignDoctype, 0], range 50 [paras[2].firstChild, 4, comment, 2] 
 PASS Point 86 [foreignDoctype, 0], range 51 [paras[3], 1, comment, 8] 
-FAIL Point 86 [foreignDoctype, 0], range 52 [foreignDoc, 0, foreignDoc, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS Point 86 [foreignDoctype, 0], range 52 [foreignDoc, 0, foreignDoc, 0] 
 PASS Point 86 [foreignDoctype, 0], range 53 [xmlDoc, 0, xmlDoc, 0] 
-FAIL Point 86 [foreignDoctype, 0], range 54 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
+FAIL Point 86 [foreignDoctype, 0], range 54 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] InvalidNodeTypeError: DOM Exception 24
 PASS Point 86 [foreignDoctype, 0], range 55 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] 
 PASS Point 86 [foreignDoctype, 0], range 56 [detachedComment, 5, detachedComment, 5] 
-FAIL Point 86 [foreignDoctype, 0], range 57 [detachedForeignComment, 4, detachedForeignComment, 4] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
-FAIL Point 86 [foreignDoctype, 0], range 58 [foreignDocfrag, 0, foreignDocfrag, 0] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
+FAIL Point 86 [foreignDoctype, 0], range 57 [detachedForeignComment, 4, detachedForeignComment, 4] InvalidNodeTypeError: DOM Exception 24
+FAIL Point 86 [foreignDoctype, 0], range 58 [foreignDocfrag, 0, foreignDocfrag, 0] InvalidNodeTypeError: DOM Exception 24
 PASS Point 86 [foreignDoctype, 0], range 59 [xmlDocfrag, 0, xmlDocfrag, 0] 
 PASS Point 86 [foreignDoctype, 0], range 60 detached 
 PASS Point 87 [xmlDoctype, 0], range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] 
@@ -5501,17 +5401,15 @@ PASS Point 87 [xmlDoctype, 0], range 25 [comment, 2, comment, 3]
 PASS Point 87 [xmlDoctype, 0], range 26 [testDiv, 0, comment, 5] 
 PASS Point 87 [xmlDoctype, 0], range 27 [foreignDoc, 1, foreignComment, 2] 
 PASS Point 87 [xmlDoctype, 0], range 28 [foreignDoc.body, 0, foreignTextNode, 36] 
-FAIL Point 87 [xmlDoctype, 0], range 29 [xmlDoc, 1, xmlComment, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS Point 87 [xmlDoctype, 0], range 29 [xmlDoc, 1, xmlComment, 0] 
 PASS Point 87 [xmlDoctype, 0], range 30 [detachedTextNode, 0, detachedTextNode, 8] 
 PASS Point 87 [xmlDoctype, 0], range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] 
-FAIL Point 87 [xmlDoctype, 0], range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
+FAIL Point 87 [xmlDoctype, 0], range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] InvalidNodeTypeError: DOM Exception 24
 PASS Point 87 [xmlDoctype, 0], range 33 [detachedComment, 3, detachedComment, 4] 
 PASS Point 87 [xmlDoctype, 0], range 34 [detachedForeignComment, 0, detachedForeignComment, 1] 
-FAIL Point 87 [xmlDoctype, 0], range 35 [detachedXmlComment, 2, detachedXmlComment, 6] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
+FAIL Point 87 [xmlDoctype, 0], range 35 [detachedXmlComment, 2, detachedXmlComment, 6] InvalidNodeTypeError: DOM Exception 24
 PASS Point 87 [xmlDoctype, 0], range 36 [docfrag, 0, docfrag, 0] 
-FAIL Point 87 [xmlDoctype, 0], range 37 [processingInstruction, 0, processingInstruction, 4] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS Point 87 [xmlDoctype, 0], range 37 [processingInstruction, 0, processingInstruction, 4] 
 PASS Point 87 [xmlDoctype, 0], range 38 [paras[1].firstChild, 0, paras[1].firstChild, 1] 
 PASS Point 87 [xmlDoctype, 0], range 39 [paras[1].firstChild, 2, paras[1].firstChild, 8] 
 PASS Point 87 [xmlDoctype, 0], range 40 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] 
@@ -5527,13 +5425,12 @@ PASS Point 87 [xmlDoctype, 0], range 49 [document, 1, document, 2]
 PASS Point 87 [xmlDoctype, 0], range 50 [paras[2].firstChild, 4, comment, 2] 
 PASS Point 87 [xmlDoctype, 0], range 51 [paras[3], 1, comment, 8] 
 PASS Point 87 [xmlDoctype, 0], range 52 [foreignDoc, 0, foreignDoc, 0] 
-FAIL Point 87 [xmlDoctype, 0], range 53 [xmlDoc, 0, xmlDoc, 0] assert_throws: Must throw InvalidNodeTypeError if node is a doctype function "function () {
-          range.isPointInRange(node, offset..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS Point 87 [xmlDoctype, 0], range 53 [xmlDoc, 0, xmlDoc, 0] 
 PASS Point 87 [xmlDoctype, 0], range 54 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] 
-FAIL Point 87 [xmlDoctype, 0], range 55 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
+FAIL Point 87 [xmlDoctype, 0], range 55 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] InvalidNodeTypeError: DOM Exception 24
 PASS Point 87 [xmlDoctype, 0], range 56 [detachedComment, 5, detachedComment, 5] 
 PASS Point 87 [xmlDoctype, 0], range 57 [detachedForeignComment, 4, detachedForeignComment, 4] 
 PASS Point 87 [xmlDoctype, 0], range 58 [foreignDocfrag, 0, foreignDocfrag, 0] 
-FAIL Point 87 [xmlDoctype, 0], range 59 [xmlDocfrag, 0, xmlDocfrag, 0] INVALID_NODE_TYPE_ERR: DOM Range Exception 2
+FAIL Point 87 [xmlDoctype, 0], range 59 [xmlDocfrag, 0, xmlDocfrag, 0] InvalidNodeTypeError: DOM Exception 24
 PASS Point 87 [xmlDoctype, 0], range 60 detached 
 
index 4778ef6..8f48e16 100644 (file)
@@ -1,24 +1,12 @@
 
-FAIL  current doc: #document node, current doc's range, type 9 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function "function () {
-            range.selectNode(node);
-        }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL  current doc: #document node, foreign doc's range, type 9 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function "function () {
-            range.selectNode(node);
-        }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL  current doc: #document node, XML doc's range, type 9 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function "function () {
-            range.selectNode(node);
-        }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL  current doc: #document node, detached range, type 9 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function "function () {
-            range.selectNode(node);
-        }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL ** current doc: html node, current doc's range, type 10 assert_throws: selectNodeContents() on a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-            range.selectNodeContents(node);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL ** current doc: html node, foreign doc's range, type 10 assert_throws: selectNodeContents() on a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-            range.selectNodeContents(node);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL ** current doc: html node, XML doc's range, type 10 assert_throws: selectNodeContents() on a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-            range.selectNodeContents(node);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL ** current doc: html node, detached range, type 10 assert_throws: selectNodeContents() on a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-            range.selectNodeContents(node);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS  current doc: #document node, current doc's range, type 9 
+PASS  current doc: #document node, foreign doc's range, type 9 
+PASS  current doc: #document node, XML doc's range, type 9 
+PASS  current doc: #document node, detached range, type 9 
+PASS ** current doc: html node, current doc's range, type 10 
+PASS ** current doc: html node, foreign doc's range, type 10 
+PASS ** current doc: html node, XML doc's range, type 10 
+PASS ** current doc: html node, detached range, type 10 
 PASS ** current doc: html node, current doc's range, type 1 
 PASS ** current doc: html node, foreign doc's range, type 1 
 PASS ** current doc: html node, XML doc's range, type 1 
@@ -143,26 +131,14 @@ PASS ******** current doc: #text node, current doc's range, type 3
 PASS ******** current doc: #text node, foreign doc's range, type 3 
 PASS ******** current doc: #text node, XML doc's range, type 3 
 PASS ******** current doc: #text node, detached range, type 3 
-FAIL  foreign doc: #document node, current doc's range, type 9 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function "function () {
-            range.selectNode(node);
-        }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL  foreign doc: #document node, foreign doc's range, type 9 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function "function () {
-            range.selectNode(node);
-        }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL  foreign doc: #document node, XML doc's range, type 9 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function "function () {
-            range.selectNode(node);
-        }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL  foreign doc: #document node, detached range, type 9 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function "function () {
-            range.selectNode(node);
-        }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL ** foreign doc: html node, current doc's range, type 10 assert_throws: selectNodeContents() on a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-            range.selectNodeContents(node);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL ** foreign doc: html node, foreign doc's range, type 10 assert_throws: selectNodeContents() on a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-            range.selectNodeContents(node);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL ** foreign doc: html node, XML doc's range, type 10 assert_throws: selectNodeContents() on a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-            range.selectNodeContents(node);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL ** foreign doc: html node, detached range, type 10 assert_throws: selectNodeContents() on a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-            range.selectNodeContents(node);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS  foreign doc: #document node, current doc's range, type 9 
+PASS  foreign doc: #document node, foreign doc's range, type 9 
+PASS  foreign doc: #document node, XML doc's range, type 9 
+PASS  foreign doc: #document node, detached range, type 9 
+PASS ** foreign doc: html node, current doc's range, type 10 
+PASS ** foreign doc: html node, foreign doc's range, type 10 
+PASS ** foreign doc: html node, XML doc's range, type 10 
+PASS ** foreign doc: html node, detached range, type 10 
 PASS ** foreign doc: html node, current doc's range, type 1 
 PASS ** foreign doc: html node, foreign doc's range, type 1 
 PASS ** foreign doc: html node, XML doc's range, type 1 
@@ -203,54 +179,34 @@ PASS ** foreign doc: #comment node, current doc's range, type 8
 PASS ** foreign doc: #comment node, foreign doc's range, type 8 
 PASS ** foreign doc: #comment node, XML doc's range, type 8 
 PASS ** foreign doc: #comment node, detached range, type 8 
-FAIL  detached div in current doc: div node, current doc's range, type 1 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function "function () {
-            range.selectNode(node);
-        }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL  detached div in current doc: div node, foreign doc's range, type 1 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function "function () {
-            range.selectNode(node);
-        }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL  detached div in current doc: div node, XML doc's range, type 1 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function "function () {
-            range.selectNode(node);
-        }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL  detached div in current doc: div node, detached range, type 1 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function "function () {
-            range.selectNode(node);
-        }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL ** detached div in current doc: p node, current doc's range, type 1 INVALID_NODE_TYPE_ERR: DOM Range Exception 2
-FAIL ** detached div in current doc: p node, foreign doc's range, type 1 INVALID_NODE_TYPE_ERR: DOM Range Exception 2
-FAIL ** detached div in current doc: p node, XML doc's range, type 1 INVALID_NODE_TYPE_ERR: DOM Range Exception 2
-FAIL ** detached div in current doc: p node, detached range, type 1 INVALID_NODE_TYPE_ERR: DOM Range Exception 2
-FAIL **** detached div in current doc: #text node, current doc's range, type 3 INVALID_NODE_TYPE_ERR: DOM Range Exception 2
-FAIL **** detached div in current doc: #text node, foreign doc's range, type 3 INVALID_NODE_TYPE_ERR: DOM Range Exception 2
-FAIL **** detached div in current doc: #text node, XML doc's range, type 3 INVALID_NODE_TYPE_ERR: DOM Range Exception 2
-FAIL **** detached div in current doc: #text node, detached range, type 3 INVALID_NODE_TYPE_ERR: DOM Range Exception 2
-FAIL ** detached div in current doc: p node, current doc's range, type 1 INVALID_NODE_TYPE_ERR: DOM Range Exception 2
-FAIL ** detached div in current doc: p node, foreign doc's range, type 1 INVALID_NODE_TYPE_ERR: DOM Range Exception 2
-FAIL ** detached div in current doc: p node, XML doc's range, type 1 INVALID_NODE_TYPE_ERR: DOM Range Exception 2
-FAIL ** detached div in current doc: p node, detached range, type 1 INVALID_NODE_TYPE_ERR: DOM Range Exception 2
-FAIL **** detached div in current doc: #text node, current doc's range, type 3 INVALID_NODE_TYPE_ERR: DOM Range Exception 2
-FAIL **** detached div in current doc: #text node, foreign doc's range, type 3 INVALID_NODE_TYPE_ERR: DOM Range Exception 2
-FAIL **** detached div in current doc: #text node, XML doc's range, type 3 INVALID_NODE_TYPE_ERR: DOM Range Exception 2
-FAIL **** detached div in current doc: #text node, detached range, type 3 INVALID_NODE_TYPE_ERR: DOM Range Exception 2
-FAIL  #document node, current doc's range, type 9 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function "function () {
-            range.selectNode(node);
-        }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL  #document node, foreign doc's range, type 9 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function "function () {
-            range.selectNode(node);
-        }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL  #document node, XML doc's range, type 9 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function "function () {
-            range.selectNode(node);
-        }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL  #document node, detached range, type 9 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function "function () {
-            range.selectNode(node);
-        }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL ** qorflesnorf node, current doc's range, type 10 assert_throws: selectNodeContents() on a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-            range.selectNodeContents(node);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL ** qorflesnorf node, foreign doc's range, type 10 assert_throws: selectNodeContents() on a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-            range.selectNodeContents(node);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL ** qorflesnorf node, XML doc's range, type 10 assert_throws: selectNodeContents() on a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-            range.selectNodeContents(node);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL ** qorflesnorf node, detached range, type 10 assert_throws: selectNodeContents() on a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-            range.selectNodeContents(node);..." threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS  detached div in current doc: div node, current doc's range, type 1 
+PASS  detached div in current doc: div node, foreign doc's range, type 1 
+PASS  detached div in current doc: div node, XML doc's range, type 1 
+PASS  detached div in current doc: div node, detached range, type 1 
+FAIL ** detached div in current doc: p node, current doc's range, type 1 InvalidNodeTypeError: DOM Exception 24
+FAIL ** detached div in current doc: p node, foreign doc's range, type 1 InvalidNodeTypeError: DOM Exception 24
+FAIL ** detached div in current doc: p node, XML doc's range, type 1 InvalidNodeTypeError: DOM Exception 24
+FAIL ** detached div in current doc: p node, detached range, type 1 InvalidNodeTypeError: DOM Exception 24
+FAIL **** detached div in current doc: #text node, current doc's range, type 3 InvalidNodeTypeError: DOM Exception 24
+FAIL **** detached div in current doc: #text node, foreign doc's range, type 3 InvalidNodeTypeError: DOM Exception 24
+FAIL **** detached div in current doc: #text node, XML doc's range, type 3 InvalidNodeTypeError: DOM Exception 24
+FAIL **** detached div in current doc: #text node, detached range, type 3 InvalidNodeTypeError: DOM Exception 24
+FAIL ** detached div in current doc: p node, current doc's range, type 1 InvalidNodeTypeError: DOM Exception 24
+FAIL ** detached div in current doc: p node, foreign doc's range, type 1 InvalidNodeTypeError: DOM Exception 24
+FAIL ** detached div in current doc: p node, XML doc's range, type 1 InvalidNodeTypeError: DOM Exception 24
+FAIL ** detached div in current doc: p node, detached range, type 1 InvalidNodeTypeError: DOM Exception 24
+FAIL **** detached div in current doc: #text node, current doc's range, type 3 InvalidNodeTypeError: DOM Exception 24
+FAIL **** detached div in current doc: #text node, foreign doc's range, type 3 InvalidNodeTypeError: DOM Exception 24
+FAIL **** detached div in current doc: #text node, XML doc's range, type 3 InvalidNodeTypeError: DOM Exception 24
+FAIL **** detached div in current doc: #text node, detached range, type 3 InvalidNodeTypeError: DOM Exception 24
+PASS  #document node, current doc's range, type 9 
+PASS  #document node, foreign doc's range, type 9 
+PASS  #document node, XML doc's range, type 9 
+PASS  #document node, detached range, type 9 
+PASS ** qorflesnorf node, current doc's range, type 10 
+PASS ** qorflesnorf node, foreign doc's range, type 10 
+PASS ** qorflesnorf node, XML doc's range, type 10 
+PASS ** qorflesnorf node, detached range, type 10 
 PASS ** igiveuponcreativenames node, current doc's range, type 1 
 PASS ** igiveuponcreativenames node, foreign doc's range, type 1 
 PASS ** igiveuponcreativenames node, XML doc's range, type 1 
@@ -275,18 +231,10 @@ PASS ** #text node, current doc's range, type 3
 PASS ** #text node, foreign doc's range, type 3 
 PASS ** #text node, XML doc's range, type 3 
 PASS ** #text node, detached range, type 3 
-FAIL  #text node, current doc's range, type 3 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function "function () {
-            range.selectNode(node);
-        }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL  #text node, foreign doc's range, type 3 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function "function () {
-            range.selectNode(node);
-        }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL  #text node, XML doc's range, type 3 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function "function () {
-            range.selectNode(node);
-        }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL  #text node, detached range, type 3 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function "function () {
-            range.selectNode(node);
-        }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS  #text node, current doc's range, type 3 
+PASS  #text node, foreign doc's range, type 3 
+PASS  #text node, XML doc's range, type 3 
+PASS  #text node, detached range, type 3 
 PASS  #text node, current doc's range, type 3 
 PASS  #text node, foreign doc's range, type 3 
 PASS  #text node, XML doc's range, type 3 
@@ -311,40 +259,16 @@ PASS  #comment node, current doc's range, type 8
 PASS  #comment node, foreign doc's range, type 8 
 PASS  #comment node, XML doc's range, type 8 
 PASS  #comment node, detached range, type 8 
-FAIL  #document-fragment node, current doc's range, type 11 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function "function () {
-            range.selectNode(node);
-        }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL  #document-fragment node, foreign doc's range, type 11 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function "function () {
-            range.selectNode(node);
-        }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL  #document-fragment node, XML doc's range, type 11 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function "function () {
-            range.selectNode(node);
-        }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL  #document-fragment node, detached range, type 11 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function "function () {
-            range.selectNode(node);
-        }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL  #document-fragment node, current doc's range, type 11 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function "function () {
-            range.selectNode(node);
-        }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL  #document-fragment node, foreign doc's range, type 11 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function "function () {
-            range.selectNode(node);
-        }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL  #document-fragment node, XML doc's range, type 11 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function "function () {
-            range.selectNode(node);
-        }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL  #document-fragment node, detached range, type 11 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function "function () {
-            range.selectNode(node);
-        }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL  #document-fragment node, current doc's range, type 11 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function "function () {
-            range.selectNode(node);
-        }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL  #document-fragment node, foreign doc's range, type 11 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function "function () {
-            range.selectNode(node);
-        }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL  #document-fragment node, XML doc's range, type 11 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function "function () {
-            range.selectNode(node);
-        }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL  #document-fragment node, detached range, type 11 assert_throws: selectNode() on a node with no parent must throw INVALID_NODE_TYPE_ERR function "function () {
-            range.selectNode(node);
-        }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS  #document-fragment node, current doc's range, type 11 
+PASS  #document-fragment node, foreign doc's range, type 11 
+PASS  #document-fragment node, XML doc's range, type 11 
+PASS  #document-fragment node, detached range, type 11 
+PASS  #document-fragment node, current doc's range, type 11 
+PASS  #document-fragment node, foreign doc's range, type 11 
+PASS  #document-fragment node, XML doc's range, type 11 
+PASS  #document-fragment node, detached range, type 11 
+PASS  #document-fragment node, current doc's range, type 11 
+PASS  #document-fragment node, foreign doc's range, type 11 
+PASS  #document-fragment node, XML doc's range, type 11 
+PASS  #document-fragment node, detached range, type 11 
 
index e2f8281..ccac08d 100644 (file)
@@ -120,21 +120,11 @@ PASS setStart() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], p
 PASS setStart() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 80 [docfrag, 0] 
 PASS setStart() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 81 [foreignDocfrag, 0] 
 PASS setStart() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 82 [xmlDocfrag, 0] 
-FAIL setStart() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStart() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 83 [doctype, 0] 
+PASS setStart() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 84 [doctype, -17] 
+PASS setStart() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 85 [doctype, 1] 
+PASS setStart() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 87 [xmlDoctype, 0] 
 PASS setStart() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 0 [paras[0].firstChild, -1] 
 PASS setStart() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 1 [paras[0].firstChild, 0] 
 PASS setStart() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 2 [paras[0].firstChild, 1] 
@@ -218,21 +208,11 @@ PASS setStart() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], p
 PASS setStart() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 80 [docfrag, 0] 
 PASS setStart() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 81 [foreignDocfrag, 0] 
 PASS setStart() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 82 [xmlDocfrag, 0] 
-FAIL setStart() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStart() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 83 [doctype, 0] 
+PASS setStart() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 84 [doctype, -17] 
+PASS setStart() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 85 [doctype, 1] 
+PASS setStart() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 87 [xmlDoctype, 0] 
 PASS setStart() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 0 [paras[0].firstChild, -1] 
 PASS setStart() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 1 [paras[0].firstChild, 0] 
 PASS setStart() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 2 [paras[0].firstChild, 1] 
@@ -316,21 +296,11 @@ PASS setStart() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], p
 PASS setStart() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 80 [docfrag, 0] 
 PASS setStart() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 81 [foreignDocfrag, 0] 
 PASS setStart() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 82 [xmlDocfrag, 0] 
-FAIL setStart() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStart() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 83 [doctype, 0] 
+PASS setStart() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 84 [doctype, -17] 
+PASS setStart() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 85 [doctype, 1] 
+PASS setStart() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 87 [xmlDoctype, 0] 
 PASS setStart() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 0 [paras[0].firstChild, -1] 
 PASS setStart() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 1 [paras[0].firstChild, 0] 
 PASS setStart() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 2 [paras[0].firstChild, 1] 
@@ -414,21 +384,11 @@ PASS setStart() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], p
 PASS setStart() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 80 [docfrag, 0] 
 PASS setStart() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 81 [foreignDocfrag, 0] 
 PASS setStart() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 82 [xmlDocfrag, 0] 
-FAIL setStart() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStart() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 83 [doctype, 0] 
+PASS setStart() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 84 [doctype, -17] 
+PASS setStart() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 85 [doctype, 1] 
+PASS setStart() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 87 [xmlDoctype, 0] 
 PASS setStart() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 0 [paras[0].firstChild, -1] 
 PASS setStart() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 1 [paras[0].firstChild, 0] 
 PASS setStart() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 2 [paras[0].firstChild, 1] 
@@ -512,21 +472,11 @@ PASS setStart() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], p
 PASS setStart() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 80 [docfrag, 0] 
 PASS setStart() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 81 [foreignDocfrag, 0] 
 PASS setStart() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 82 [xmlDocfrag, 0] 
-FAIL setStart() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStart() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 83 [doctype, 0] 
+PASS setStart() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 84 [doctype, -17] 
+PASS setStart() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 85 [doctype, 1] 
+PASS setStart() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 87 [xmlDoctype, 0] 
 PASS setStart() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 0 [paras[0].firstChild, -1] 
 PASS setStart() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 1 [paras[0].firstChild, 0] 
 PASS setStart() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 2 [paras[0].firstChild, 1] 
@@ -610,21 +560,11 @@ PASS setStart() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], p
 PASS setStart() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 80 [docfrag, 0] 
 PASS setStart() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 81 [foreignDocfrag, 0] 
 PASS setStart() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 82 [xmlDocfrag, 0] 
-FAIL setStart() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStart() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 83 [doctype, 0] 
+PASS setStart() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 84 [doctype, -17] 
+PASS setStart() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 85 [doctype, 1] 
+PASS setStart() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 87 [xmlDoctype, 0] 
 PASS setStart() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 0 [paras[0].firstChild, -1] 
 PASS setStart() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 1 [paras[0].firstChild, 0] 
 PASS setStart() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 2 [paras[0].firstChild, 1] 
@@ -708,21 +648,11 @@ PASS setStart() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstCh
 PASS setStart() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 80 [docfrag, 0] 
 PASS setStart() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 81 [foreignDocfrag, 0] 
 PASS setStart() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 82 [xmlDocfrag, 0] 
-FAIL setStart() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStart() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 83 [doctype, 0] 
+PASS setStart() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 84 [doctype, -17] 
+PASS setStart() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 85 [doctype, 1] 
+PASS setStart() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 87 [xmlDoctype, 0] 
 PASS setStart() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 0 [paras[0].firstChild, -1] 
 PASS setStart() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 1 [paras[0].firstChild, 0] 
 PASS setStart() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 2 [paras[0].firstChild, 1] 
@@ -806,21 +736,11 @@ PASS setStart() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstCh
 PASS setStart() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 80 [docfrag, 0] 
 PASS setStart() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 81 [foreignDocfrag, 0] 
 PASS setStart() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 82 [xmlDocfrag, 0] 
-FAIL setStart() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStart() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 83 [doctype, 0] 
+PASS setStart() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 84 [doctype, -17] 
+PASS setStart() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 85 [doctype, 1] 
+PASS setStart() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 87 [xmlDoctype, 0] 
 PASS setStart() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 0 [paras[0].firstChild, -1] 
 PASS setStart() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 1 [paras[0].firstChild, 0] 
 PASS setStart() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 2 [paras[0].firstChild, 1] 
@@ -904,21 +824,11 @@ PASS setStart() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChil
 PASS setStart() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 80 [docfrag, 0] 
 PASS setStart() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 81 [foreignDocfrag, 0] 
 PASS setStart() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 82 [xmlDocfrag, 0] 
-FAIL setStart() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStart() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 83 [doctype, 0] 
+PASS setStart() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 84 [doctype, -17] 
+PASS setStart() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 85 [doctype, 1] 
+PASS setStart() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 87 [xmlDoctype, 0] 
 PASS setStart() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 0 [paras[0].firstChild, -1] 
 PASS setStart() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 1 [paras[0].firstChild, 0] 
 PASS setStart() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 2 [paras[0].firstChild, 1] 
@@ -1002,21 +912,11 @@ PASS setStart() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChil
 PASS setStart() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 80 [docfrag, 0] 
 PASS setStart() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 81 [foreignDocfrag, 0] 
 PASS setStart() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 82 [xmlDocfrag, 0] 
-FAIL setStart() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStart() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 83 [doctype, 0] 
+PASS setStart() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 84 [doctype, -17] 
+PASS setStart() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 85 [doctype, 1] 
+PASS setStart() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 87 [xmlDoctype, 0] 
 PASS setStart() with range 10 [document.documentElement, 0, document.documentElement, 1], point 0 [paras[0].firstChild, -1] 
 PASS setStart() with range 10 [document.documentElement, 0, document.documentElement, 1], point 1 [paras[0].firstChild, 0] 
 PASS setStart() with range 10 [document.documentElement, 0, document.documentElement, 1], point 2 [paras[0].firstChild, 1] 
@@ -1100,21 +1000,11 @@ PASS setStart() with range 10 [document.documentElement, 0, document.documentEle
 PASS setStart() with range 10 [document.documentElement, 0, document.documentElement, 1], point 80 [docfrag, 0] 
 PASS setStart() with range 10 [document.documentElement, 0, document.documentElement, 1], point 81 [foreignDocfrag, 0] 
 PASS setStart() with range 10 [document.documentElement, 0, document.documentElement, 1], point 82 [xmlDocfrag, 0] 
-FAIL setStart() with range 10 [document.documentElement, 0, document.documentElement, 1], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 10 [document.documentElement, 0, document.documentElement, 1], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 10 [document.documentElement, 0, document.documentElement, 1], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 10 [document.documentElement, 0, document.documentElement, 1], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 10 [document.documentElement, 0, document.documentElement, 1], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStart() with range 10 [document.documentElement, 0, document.documentElement, 1], point 83 [doctype, 0] 
+PASS setStart() with range 10 [document.documentElement, 0, document.documentElement, 1], point 84 [doctype, -17] 
+PASS setStart() with range 10 [document.documentElement, 0, document.documentElement, 1], point 85 [doctype, 1] 
+PASS setStart() with range 10 [document.documentElement, 0, document.documentElement, 1], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 10 [document.documentElement, 0, document.documentElement, 1], point 87 [xmlDoctype, 0] 
 PASS setStart() with range 11 [document.documentElement, 0, document.documentElement, 2], point 0 [paras[0].firstChild, -1] 
 PASS setStart() with range 11 [document.documentElement, 0, document.documentElement, 2], point 1 [paras[0].firstChild, 0] 
 PASS setStart() with range 11 [document.documentElement, 0, document.documentElement, 2], point 2 [paras[0].firstChild, 1] 
@@ -1198,21 +1088,11 @@ PASS setStart() with range 11 [document.documentElement, 0, document.documentEle
 PASS setStart() with range 11 [document.documentElement, 0, document.documentElement, 2], point 80 [docfrag, 0] 
 PASS setStart() with range 11 [document.documentElement, 0, document.documentElement, 2], point 81 [foreignDocfrag, 0] 
 PASS setStart() with range 11 [document.documentElement, 0, document.documentElement, 2], point 82 [xmlDocfrag, 0] 
-FAIL setStart() with range 11 [document.documentElement, 0, document.documentElement, 2], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 11 [document.documentElement, 0, document.documentElement, 2], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 11 [document.documentElement, 0, document.documentElement, 2], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 11 [document.documentElement, 0, document.documentElement, 2], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 11 [document.documentElement, 0, document.documentElement, 2], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStart() with range 11 [document.documentElement, 0, document.documentElement, 2], point 83 [doctype, 0] 
+PASS setStart() with range 11 [document.documentElement, 0, document.documentElement, 2], point 84 [doctype, -17] 
+PASS setStart() with range 11 [document.documentElement, 0, document.documentElement, 2], point 85 [doctype, 1] 
+PASS setStart() with range 11 [document.documentElement, 0, document.documentElement, 2], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 11 [document.documentElement, 0, document.documentElement, 2], point 87 [xmlDoctype, 0] 
 PASS setStart() with range 12 [document.documentElement, 1, document.documentElement, 2], point 0 [paras[0].firstChild, -1] 
 PASS setStart() with range 12 [document.documentElement, 1, document.documentElement, 2], point 1 [paras[0].firstChild, 0] 
 PASS setStart() with range 12 [document.documentElement, 1, document.documentElement, 2], point 2 [paras[0].firstChild, 1] 
@@ -1296,21 +1176,11 @@ PASS setStart() with range 12 [document.documentElement, 1, document.documentEle
 PASS setStart() with range 12 [document.documentElement, 1, document.documentElement, 2], point 80 [docfrag, 0] 
 PASS setStart() with range 12 [document.documentElement, 1, document.documentElement, 2], point 81 [foreignDocfrag, 0] 
 PASS setStart() with range 12 [document.documentElement, 1, document.documentElement, 2], point 82 [xmlDocfrag, 0] 
-FAIL setStart() with range 12 [document.documentElement, 1, document.documentElement, 2], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 12 [document.documentElement, 1, document.documentElement, 2], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 12 [document.documentElement, 1, document.documentElement, 2], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 12 [document.documentElement, 1, document.documentElement, 2], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 12 [document.documentElement, 1, document.documentElement, 2], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStart() with range 12 [document.documentElement, 1, document.documentElement, 2], point 83 [doctype, 0] 
+PASS setStart() with range 12 [document.documentElement, 1, document.documentElement, 2], point 84 [doctype, -17] 
+PASS setStart() with range 12 [document.documentElement, 1, document.documentElement, 2], point 85 [doctype, 1] 
+PASS setStart() with range 12 [document.documentElement, 1, document.documentElement, 2], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 12 [document.documentElement, 1, document.documentElement, 2], point 87 [xmlDoctype, 0] 
 PASS setStart() with range 13 [document.head, 1, document.head, 1], point 0 [paras[0].firstChild, -1] 
 PASS setStart() with range 13 [document.head, 1, document.head, 1], point 1 [paras[0].firstChild, 0] 
 PASS setStart() with range 13 [document.head, 1, document.head, 1], point 2 [paras[0].firstChild, 1] 
@@ -1394,21 +1264,11 @@ PASS setStart() with range 13 [document.head, 1, document.head, 1], point 79 [de
 PASS setStart() with range 13 [document.head, 1, document.head, 1], point 80 [docfrag, 0] 
 PASS setStart() with range 13 [document.head, 1, document.head, 1], point 81 [foreignDocfrag, 0] 
 PASS setStart() with range 13 [document.head, 1, document.head, 1], point 82 [xmlDocfrag, 0] 
-FAIL setStart() with range 13 [document.head, 1, document.head, 1], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 13 [document.head, 1, document.head, 1], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 13 [document.head, 1, document.head, 1], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 13 [document.head, 1, document.head, 1], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 13 [document.head, 1, document.head, 1], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStart() with range 13 [document.head, 1, document.head, 1], point 83 [doctype, 0] 
+PASS setStart() with range 13 [document.head, 1, document.head, 1], point 84 [doctype, -17] 
+PASS setStart() with range 13 [document.head, 1, document.head, 1], point 85 [doctype, 1] 
+PASS setStart() with range 13 [document.head, 1, document.head, 1], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 13 [document.head, 1, document.head, 1], point 87 [xmlDoctype, 0] 
 PASS setStart() with range 14 [document.body, 4, document.body, 5], point 0 [paras[0].firstChild, -1] 
 PASS setStart() with range 14 [document.body, 4, document.body, 5], point 1 [paras[0].firstChild, 0] 
 PASS setStart() with range 14 [document.body, 4, document.body, 5], point 2 [paras[0].firstChild, 1] 
@@ -1492,21 +1352,11 @@ PASS setStart() with range 14 [document.body, 4, document.body, 5], point 79 [de
 PASS setStart() with range 14 [document.body, 4, document.body, 5], point 80 [docfrag, 0] 
 PASS setStart() with range 14 [document.body, 4, document.body, 5], point 81 [foreignDocfrag, 0] 
 PASS setStart() with range 14 [document.body, 4, document.body, 5], point 82 [xmlDocfrag, 0] 
-FAIL setStart() with range 14 [document.body, 4, document.body, 5], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 14 [document.body, 4, document.body, 5], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 14 [document.body, 4, document.body, 5], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 14 [document.body, 4, document.body, 5], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 14 [document.body, 4, document.body, 5], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStart() with range 14 [document.body, 4, document.body, 5], point 83 [doctype, 0] 
+PASS setStart() with range 14 [document.body, 4, document.body, 5], point 84 [doctype, -17] 
+PASS setStart() with range 14 [document.body, 4, document.body, 5], point 85 [doctype, 1] 
+PASS setStart() with range 14 [document.body, 4, document.body, 5], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 14 [document.body, 4, document.body, 5], point 87 [xmlDoctype, 0] 
 PASS setStart() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 0 [paras[0].firstChild, -1] 
 PASS setStart() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 1 [paras[0].firstChild, 0] 
 PASS setStart() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 2 [paras[0].firstChild, 1] 
@@ -1590,21 +1440,11 @@ PASS setStart() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documen
 PASS setStart() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 80 [docfrag, 0] 
 PASS setStart() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 81 [foreignDocfrag, 0] 
 PASS setStart() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 82 [xmlDocfrag, 0] 
-FAIL setStart() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStart() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 83 [doctype, 0] 
+PASS setStart() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 84 [doctype, -17] 
+PASS setStart() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 85 [doctype, 1] 
+PASS setStart() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 87 [xmlDoctype, 0] 
 PASS setStart() with range 16 [paras[0], 0, paras[0], 1], point 0 [paras[0].firstChild, -1] 
 PASS setStart() with range 16 [paras[0], 0, paras[0], 1], point 1 [paras[0].firstChild, 0] 
 PASS setStart() with range 16 [paras[0], 0, paras[0], 1], point 2 [paras[0].firstChild, 1] 
@@ -1688,21 +1528,11 @@ PASS setStart() with range 16 [paras[0], 0, paras[0], 1], point 79 [detachedXmlC
 PASS setStart() with range 16 [paras[0], 0, paras[0], 1], point 80 [docfrag, 0] 
 PASS setStart() with range 16 [paras[0], 0, paras[0], 1], point 81 [foreignDocfrag, 0] 
 PASS setStart() with range 16 [paras[0], 0, paras[0], 1], point 82 [xmlDocfrag, 0] 
-FAIL setStart() with range 16 [paras[0], 0, paras[0], 1], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 16 [paras[0], 0, paras[0], 1], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 16 [paras[0], 0, paras[0], 1], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 16 [paras[0], 0, paras[0], 1], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 16 [paras[0], 0, paras[0], 1], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStart() with range 16 [paras[0], 0, paras[0], 1], point 83 [doctype, 0] 
+PASS setStart() with range 16 [paras[0], 0, paras[0], 1], point 84 [doctype, -17] 
+PASS setStart() with range 16 [paras[0], 0, paras[0], 1], point 85 [doctype, 1] 
+PASS setStart() with range 16 [paras[0], 0, paras[0], 1], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 16 [paras[0], 0, paras[0], 1], point 87 [xmlDoctype, 0] 
 PASS setStart() with range 17 [detachedPara1, 0, detachedPara1, 1], point 0 [paras[0].firstChild, -1] 
 PASS setStart() with range 17 [detachedPara1, 0, detachedPara1, 1], point 1 [paras[0].firstChild, 0] 
 PASS setStart() with range 17 [detachedPara1, 0, detachedPara1, 1], point 2 [paras[0].firstChild, 1] 
@@ -1786,21 +1616,11 @@ PASS setStart() with range 17 [detachedPara1, 0, detachedPara1, 1], point 79 [de
 PASS setStart() with range 17 [detachedPara1, 0, detachedPara1, 1], point 80 [docfrag, 0] 
 PASS setStart() with range 17 [detachedPara1, 0, detachedPara1, 1], point 81 [foreignDocfrag, 0] 
 PASS setStart() with range 17 [detachedPara1, 0, detachedPara1, 1], point 82 [xmlDocfrag, 0] 
-FAIL setStart() with range 17 [detachedPara1, 0, detachedPara1, 1], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 17 [detachedPara1, 0, detachedPara1, 1], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 17 [detachedPara1, 0, detachedPara1, 1], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 17 [detachedPara1, 0, detachedPara1, 1], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 17 [detachedPara1, 0, detachedPara1, 1], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStart() with range 17 [detachedPara1, 0, detachedPara1, 1], point 83 [doctype, 0] 
+PASS setStart() with range 17 [detachedPara1, 0, detachedPara1, 1], point 84 [doctype, -17] 
+PASS setStart() with range 17 [detachedPara1, 0, detachedPara1, 1], point 85 [doctype, 1] 
+PASS setStart() with range 17 [detachedPara1, 0, detachedPara1, 1], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 17 [detachedPara1, 0, detachedPara1, 1], point 87 [xmlDoctype, 0] 
 PASS setStart() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 0 [paras[0].firstChild, -1] 
 PASS setStart() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 1 [paras[0].firstChild, 0] 
 PASS setStart() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 2 [paras[0].firstChild, 1] 
@@ -1884,21 +1704,11 @@ PASS setStart() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0],
 PASS setStart() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 80 [docfrag, 0] 
 PASS setStart() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 81 [foreignDocfrag, 0] 
 PASS setStart() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 82 [xmlDocfrag, 0] 
-FAIL setStart() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStart() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 83 [doctype, 0] 
+PASS setStart() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 84 [doctype, -17] 
+PASS setStart() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 85 [doctype, 1] 
+PASS setStart() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 87 [xmlDoctype, 0] 
 PASS setStart() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 0 [paras[0].firstChild, -1] 
 PASS setStart() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 1 [paras[0].firstChild, 0] 
 PASS setStart() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 2 [paras[0].firstChild, 1] 
@@ -1982,21 +1792,11 @@ PASS setStart() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8],
 PASS setStart() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 80 [docfrag, 0] 
 PASS setStart() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 81 [foreignDocfrag, 0] 
 PASS setStart() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 82 [xmlDocfrag, 0] 
-FAIL setStart() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStart() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 83 [doctype, 0] 
+PASS setStart() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 84 [doctype, -17] 
+PASS setStart() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 85 [doctype, 1] 
+PASS setStart() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 87 [xmlDoctype, 0] 
 PASS setStart() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 0 [paras[0].firstChild, -1] 
 PASS setStart() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 1 [paras[0].firstChild, 0] 
 PASS setStart() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 2 [paras[0].firstChild, 1] 
@@ -2080,21 +1880,11 @@ PASS setStart() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 79 [d
 PASS setStart() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 80 [docfrag, 0] 
 PASS setStart() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 81 [foreignDocfrag, 0] 
 PASS setStart() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 82 [xmlDocfrag, 0] 
-FAIL setStart() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStart() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 83 [doctype, 0] 
+PASS setStart() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 84 [doctype, -17] 
+PASS setStart() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 85 [doctype, 1] 
+PASS setStart() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 87 [xmlDoctype, 0] 
 PASS setStart() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 0 [paras[0].firstChild, -1] 
 PASS setStart() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 1 [paras[0].firstChild, 0] 
 PASS setStart() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 2 [paras[0].firstChild, 1] 
@@ -2178,21 +1968,11 @@ PASS setStart() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 79 [d
 PASS setStart() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 80 [docfrag, 0] 
 PASS setStart() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 81 [foreignDocfrag, 0] 
 PASS setStart() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 82 [xmlDocfrag, 0] 
-FAIL setStart() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStart() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 83 [doctype, 0] 
+PASS setStart() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 84 [doctype, -17] 
+PASS setStart() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 85 [doctype, 1] 
+PASS setStart() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 87 [xmlDoctype, 0] 
 PASS setStart() with range 22 [testDiv, 2, paras[4], 1], point 0 [paras[0].firstChild, -1] 
 PASS setStart() with range 22 [testDiv, 2, paras[4], 1], point 1 [paras[0].firstChild, 0] 
 PASS setStart() with range 22 [testDiv, 2, paras[4], 1], point 2 [paras[0].firstChild, 1] 
@@ -2276,21 +2056,11 @@ PASS setStart() with range 22 [testDiv, 2, paras[4], 1], point 79 [detachedXmlCo
 PASS setStart() with range 22 [testDiv, 2, paras[4], 1], point 80 [docfrag, 0] 
 PASS setStart() with range 22 [testDiv, 2, paras[4], 1], point 81 [foreignDocfrag, 0] 
 PASS setStart() with range 22 [testDiv, 2, paras[4], 1], point 82 [xmlDocfrag, 0] 
-FAIL setStart() with range 22 [testDiv, 2, paras[4], 1], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 22 [testDiv, 2, paras[4], 1], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 22 [testDiv, 2, paras[4], 1], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 22 [testDiv, 2, paras[4], 1], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 22 [testDiv, 2, paras[4], 1], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStart() with range 22 [testDiv, 2, paras[4], 1], point 83 [doctype, 0] 
+PASS setStart() with range 22 [testDiv, 2, paras[4], 1], point 84 [doctype, -17] 
+PASS setStart() with range 22 [testDiv, 2, paras[4], 1], point 85 [doctype, 1] 
+PASS setStart() with range 22 [testDiv, 2, paras[4], 1], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 22 [testDiv, 2, paras[4], 1], point 87 [xmlDoctype, 0] 
 PASS setStart() with range 23 [document, 0, document, 1], point 0 [paras[0].firstChild, -1] 
 PASS setStart() with range 23 [document, 0, document, 1], point 1 [paras[0].firstChild, 0] 
 PASS setStart() with range 23 [document, 0, document, 1], point 2 [paras[0].firstChild, 1] 
@@ -2374,21 +2144,11 @@ PASS setStart() with range 23 [document, 0, document, 1], point 79 [detachedXmlC
 PASS setStart() with range 23 [document, 0, document, 1], point 80 [docfrag, 0] 
 PASS setStart() with range 23 [document, 0, document, 1], point 81 [foreignDocfrag, 0] 
 PASS setStart() with range 23 [document, 0, document, 1], point 82 [xmlDocfrag, 0] 
-FAIL setStart() with range 23 [document, 0, document, 1], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 23 [document, 0, document, 1], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 23 [document, 0, document, 1], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 23 [document, 0, document, 1], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 23 [document, 0, document, 1], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStart() with range 23 [document, 0, document, 1], point 83 [doctype, 0] 
+PASS setStart() with range 23 [document, 0, document, 1], point 84 [doctype, -17] 
+PASS setStart() with range 23 [document, 0, document, 1], point 85 [doctype, 1] 
+PASS setStart() with range 23 [document, 0, document, 1], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 23 [document, 0, document, 1], point 87 [xmlDoctype, 0] 
 PASS setStart() with range 24 [document, 0, document, 2], point 0 [paras[0].firstChild, -1] 
 PASS setStart() with range 24 [document, 0, document, 2], point 1 [paras[0].firstChild, 0] 
 PASS setStart() with range 24 [document, 0, document, 2], point 2 [paras[0].firstChild, 1] 
@@ -2472,21 +2232,11 @@ PASS setStart() with range 24 [document, 0, document, 2], point 79 [detachedXmlC
 PASS setStart() with range 24 [document, 0, document, 2], point 80 [docfrag, 0] 
 PASS setStart() with range 24 [document, 0, document, 2], point 81 [foreignDocfrag, 0] 
 PASS setStart() with range 24 [document, 0, document, 2], point 82 [xmlDocfrag, 0] 
-FAIL setStart() with range 24 [document, 0, document, 2], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 24 [document, 0, document, 2], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 24 [document, 0, document, 2], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 24 [document, 0, document, 2], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 24 [document, 0, document, 2], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStart() with range 24 [document, 0, document, 2], point 83 [doctype, 0] 
+PASS setStart() with range 24 [document, 0, document, 2], point 84 [doctype, -17] 
+PASS setStart() with range 24 [document, 0, document, 2], point 85 [doctype, 1] 
+PASS setStart() with range 24 [document, 0, document, 2], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 24 [document, 0, document, 2], point 87 [xmlDoctype, 0] 
 PASS setStart() with range 25 [comment, 2, comment, 3], point 0 [paras[0].firstChild, -1] 
 PASS setStart() with range 25 [comment, 2, comment, 3], point 1 [paras[0].firstChild, 0] 
 PASS setStart() with range 25 [comment, 2, comment, 3], point 2 [paras[0].firstChild, 1] 
@@ -2570,21 +2320,11 @@ PASS setStart() with range 25 [comment, 2, comment, 3], point 79 [detachedXmlCom
 PASS setStart() with range 25 [comment, 2, comment, 3], point 80 [docfrag, 0] 
 PASS setStart() with range 25 [comment, 2, comment, 3], point 81 [foreignDocfrag, 0] 
 PASS setStart() with range 25 [comment, 2, comment, 3], point 82 [xmlDocfrag, 0] 
-FAIL setStart() with range 25 [comment, 2, comment, 3], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 25 [comment, 2, comment, 3], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 25 [comment, 2, comment, 3], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 25 [comment, 2, comment, 3], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 25 [comment, 2, comment, 3], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStart() with range 25 [comment, 2, comment, 3], point 83 [doctype, 0] 
+PASS setStart() with range 25 [comment, 2, comment, 3], point 84 [doctype, -17] 
+PASS setStart() with range 25 [comment, 2, comment, 3], point 85 [doctype, 1] 
+PASS setStart() with range 25 [comment, 2, comment, 3], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 25 [comment, 2, comment, 3], point 87 [xmlDoctype, 0] 
 PASS setStart() with range 26 [testDiv, 0, comment, 5], point 0 [paras[0].firstChild, -1] 
 PASS setStart() with range 26 [testDiv, 0, comment, 5], point 1 [paras[0].firstChild, 0] 
 PASS setStart() with range 26 [testDiv, 0, comment, 5], point 2 [paras[0].firstChild, 1] 
@@ -2668,21 +2408,11 @@ PASS setStart() with range 26 [testDiv, 0, comment, 5], point 79 [detachedXmlCom
 PASS setStart() with range 26 [testDiv, 0, comment, 5], point 80 [docfrag, 0] 
 PASS setStart() with range 26 [testDiv, 0, comment, 5], point 81 [foreignDocfrag, 0] 
 PASS setStart() with range 26 [testDiv, 0, comment, 5], point 82 [xmlDocfrag, 0] 
-FAIL setStart() with range 26 [testDiv, 0, comment, 5], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 26 [testDiv, 0, comment, 5], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 26 [testDiv, 0, comment, 5], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 26 [testDiv, 0, comment, 5], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 26 [testDiv, 0, comment, 5], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStart() with range 26 [testDiv, 0, comment, 5], point 83 [doctype, 0] 
+PASS setStart() with range 26 [testDiv, 0, comment, 5], point 84 [doctype, -17] 
+PASS setStart() with range 26 [testDiv, 0, comment, 5], point 85 [doctype, 1] 
+PASS setStart() with range 26 [testDiv, 0, comment, 5], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 26 [testDiv, 0, comment, 5], point 87 [xmlDoctype, 0] 
 PASS setStart() with range 27 [foreignDoc, 1, foreignComment, 2], point 0 [paras[0].firstChild, -1] 
 PASS setStart() with range 27 [foreignDoc, 1, foreignComment, 2], point 1 [paras[0].firstChild, 0] 
 PASS setStart() with range 27 [foreignDoc, 1, foreignComment, 2], point 2 [paras[0].firstChild, 1] 
@@ -2766,21 +2496,11 @@ PASS setStart() with range 27 [foreignDoc, 1, foreignComment, 2], point 79 [deta
 PASS setStart() with range 27 [foreignDoc, 1, foreignComment, 2], point 80 [docfrag, 0] 
 PASS setStart() with range 27 [foreignDoc, 1, foreignComment, 2], point 81 [foreignDocfrag, 0] 
 PASS setStart() with range 27 [foreignDoc, 1, foreignComment, 2], point 82 [xmlDocfrag, 0] 
-FAIL setStart() with range 27 [foreignDoc, 1, foreignComment, 2], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 27 [foreignDoc, 1, foreignComment, 2], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 27 [foreignDoc, 1, foreignComment, 2], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 27 [foreignDoc, 1, foreignComment, 2], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 27 [foreignDoc, 1, foreignComment, 2], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStart() with range 27 [foreignDoc, 1, foreignComment, 2], point 83 [doctype, 0] 
+PASS setStart() with range 27 [foreignDoc, 1, foreignComment, 2], point 84 [doctype, -17] 
+PASS setStart() with range 27 [foreignDoc, 1, foreignComment, 2], point 85 [doctype, 1] 
+PASS setStart() with range 27 [foreignDoc, 1, foreignComment, 2], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 27 [foreignDoc, 1, foreignComment, 2], point 87 [xmlDoctype, 0] 
 PASS setStart() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 0 [paras[0].firstChild, -1] 
 PASS setStart() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 1 [paras[0].firstChild, 0] 
 PASS setStart() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 2 [paras[0].firstChild, 1] 
@@ -2864,21 +2584,11 @@ PASS setStart() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 7
 PASS setStart() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 80 [docfrag, 0] 
 PASS setStart() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 81 [foreignDocfrag, 0] 
 PASS setStart() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 82 [xmlDocfrag, 0] 
-FAIL setStart() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStart() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 83 [doctype, 0] 
+PASS setStart() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 84 [doctype, -17] 
+PASS setStart() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 85 [doctype, 1] 
+PASS setStart() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 87 [xmlDoctype, 0] 
 PASS setStart() with range 29 [xmlDoc, 1, xmlComment, 0], point 0 [paras[0].firstChild, -1] 
 PASS setStart() with range 29 [xmlDoc, 1, xmlComment, 0], point 1 [paras[0].firstChild, 0] 
 PASS setStart() with range 29 [xmlDoc, 1, xmlComment, 0], point 2 [paras[0].firstChild, 1] 
@@ -2962,21 +2672,11 @@ PASS setStart() with range 29 [xmlDoc, 1, xmlComment, 0], point 79 [detachedXmlC
 PASS setStart() with range 29 [xmlDoc, 1, xmlComment, 0], point 80 [docfrag, 0] 
 PASS setStart() with range 29 [xmlDoc, 1, xmlComment, 0], point 81 [foreignDocfrag, 0] 
 PASS setStart() with range 29 [xmlDoc, 1, xmlComment, 0], point 82 [xmlDocfrag, 0] 
-FAIL setStart() with range 29 [xmlDoc, 1, xmlComment, 0], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 29 [xmlDoc, 1, xmlComment, 0], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 29 [xmlDoc, 1, xmlComment, 0], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 29 [xmlDoc, 1, xmlComment, 0], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 29 [xmlDoc, 1, xmlComment, 0], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStart() with range 29 [xmlDoc, 1, xmlComment, 0], point 83 [doctype, 0] 
+PASS setStart() with range 29 [xmlDoc, 1, xmlComment, 0], point 84 [doctype, -17] 
+PASS setStart() with range 29 [xmlDoc, 1, xmlComment, 0], point 85 [doctype, 1] 
+PASS setStart() with range 29 [xmlDoc, 1, xmlComment, 0], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 29 [xmlDoc, 1, xmlComment, 0], point 87 [xmlDoctype, 0] 
 PASS setStart() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 0 [paras[0].firstChild, -1] 
 PASS setStart() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 1 [paras[0].firstChild, 0] 
 PASS setStart() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 2 [paras[0].firstChild, 1] 
@@ -3060,21 +2760,11 @@ PASS setStart() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point
 PASS setStart() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 80 [docfrag, 0] 
 PASS setStart() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 81 [foreignDocfrag, 0] 
 PASS setStart() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 82 [xmlDocfrag, 0] 
-FAIL setStart() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStart() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 83 [doctype, 0] 
+PASS setStart() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 84 [doctype, -17] 
+PASS setStart() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 85 [doctype, 1] 
+PASS setStart() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 87 [xmlDoctype, 0] 
 PASS setStart() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 0 [paras[0].firstChild, -1] 
 PASS setStart() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 1 [paras[0].firstChild, 0] 
 PASS setStart() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 2 [paras[0].firstChild, 1] 
@@ -3158,21 +2848,11 @@ PASS setStart() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNo
 PASS setStart() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 80 [docfrag, 0] 
 PASS setStart() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 81 [foreignDocfrag, 0] 
 PASS setStart() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 82 [xmlDocfrag, 0] 
-FAIL setStart() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStart() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 83 [doctype, 0] 
+PASS setStart() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 84 [doctype, -17] 
+PASS setStart() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 85 [doctype, 1] 
+PASS setStart() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 87 [xmlDoctype, 0] 
 PASS setStart() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 0 [paras[0].firstChild, -1] 
 PASS setStart() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 1 [paras[0].firstChild, 0] 
 PASS setStart() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 2 [paras[0].firstChild, 1] 
@@ -3256,21 +2936,11 @@ PASS setStart() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8],
 PASS setStart() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 80 [docfrag, 0] 
 PASS setStart() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 81 [foreignDocfrag, 0] 
 PASS setStart() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 82 [xmlDocfrag, 0] 
-FAIL setStart() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStart() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 83 [doctype, 0] 
+PASS setStart() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 84 [doctype, -17] 
+PASS setStart() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 85 [doctype, 1] 
+PASS setStart() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 87 [xmlDoctype, 0] 
 PASS setStart() with range 33 [detachedComment, 3, detachedComment, 4], point 0 [paras[0].firstChild, -1] 
 PASS setStart() with range 33 [detachedComment, 3, detachedComment, 4], point 1 [paras[0].firstChild, 0] 
 PASS setStart() with range 33 [detachedComment, 3, detachedComment, 4], point 2 [paras[0].firstChild, 1] 
@@ -3354,21 +3024,11 @@ PASS setStart() with range 33 [detachedComment, 3, detachedComment, 4], point 79
 PASS setStart() with range 33 [detachedComment, 3, detachedComment, 4], point 80 [docfrag, 0] 
 PASS setStart() with range 33 [detachedComment, 3, detachedComment, 4], point 81 [foreignDocfrag, 0] 
 PASS setStart() with range 33 [detachedComment, 3, detachedComment, 4], point 82 [xmlDocfrag, 0] 
-FAIL setStart() with range 33 [detachedComment, 3, detachedComment, 4], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 33 [detachedComment, 3, detachedComment, 4], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 33 [detachedComment, 3, detachedComment, 4], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 33 [detachedComment, 3, detachedComment, 4], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 33 [detachedComment, 3, detachedComment, 4], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStart() with range 33 [detachedComment, 3, detachedComment, 4], point 83 [doctype, 0] 
+PASS setStart() with range 33 [detachedComment, 3, detachedComment, 4], point 84 [doctype, -17] 
+PASS setStart() with range 33 [detachedComment, 3, detachedComment, 4], point 85 [doctype, 1] 
+PASS setStart() with range 33 [detachedComment, 3, detachedComment, 4], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 33 [detachedComment, 3, detachedComment, 4], point 87 [xmlDoctype, 0] 
 PASS setStart() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 0 [paras[0].firstChild, -1] 
 PASS setStart() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 1 [paras[0].firstChild, 0] 
 PASS setStart() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 2 [paras[0].firstChild, 1] 
@@ -3452,21 +3112,11 @@ PASS setStart() with range 34 [detachedForeignComment, 0, detachedForeignComment
 PASS setStart() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 80 [docfrag, 0] 
 PASS setStart() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 81 [foreignDocfrag, 0] 
 PASS setStart() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 82 [xmlDocfrag, 0] 
-FAIL setStart() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStart() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 83 [doctype, 0] 
+PASS setStart() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 84 [doctype, -17] 
+PASS setStart() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 85 [doctype, 1] 
+PASS setStart() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 87 [xmlDoctype, 0] 
 PASS setStart() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 0 [paras[0].firstChild, -1] 
 PASS setStart() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 1 [paras[0].firstChild, 0] 
 PASS setStart() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 2 [paras[0].firstChild, 1] 
@@ -3550,21 +3200,11 @@ PASS setStart() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], po
 PASS setStart() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 80 [docfrag, 0] 
 PASS setStart() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 81 [foreignDocfrag, 0] 
 PASS setStart() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 82 [xmlDocfrag, 0] 
-FAIL setStart() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStart() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 83 [doctype, 0] 
+PASS setStart() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 84 [doctype, -17] 
+PASS setStart() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 85 [doctype, 1] 
+PASS setStart() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 87 [xmlDoctype, 0] 
 PASS setStart() with range 36 [docfrag, 0, docfrag, 0], point 0 [paras[0].firstChild, -1] 
 PASS setStart() with range 36 [docfrag, 0, docfrag, 0], point 1 [paras[0].firstChild, 0] 
 PASS setStart() with range 36 [docfrag, 0, docfrag, 0], point 2 [paras[0].firstChild, 1] 
@@ -3648,21 +3288,11 @@ PASS setStart() with range 36 [docfrag, 0, docfrag, 0], point 79 [detachedXmlCom
 PASS setStart() with range 36 [docfrag, 0, docfrag, 0], point 80 [docfrag, 0] 
 PASS setStart() with range 36 [docfrag, 0, docfrag, 0], point 81 [foreignDocfrag, 0] 
 PASS setStart() with range 36 [docfrag, 0, docfrag, 0], point 82 [xmlDocfrag, 0] 
-FAIL setStart() with range 36 [docfrag, 0, docfrag, 0], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 36 [docfrag, 0, docfrag, 0], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 36 [docfrag, 0, docfrag, 0], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 36 [docfrag, 0, docfrag, 0], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 36 [docfrag, 0, docfrag, 0], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStart() with range 36 [docfrag, 0, docfrag, 0], point 83 [doctype, 0] 
+PASS setStart() with range 36 [docfrag, 0, docfrag, 0], point 84 [doctype, -17] 
+PASS setStart() with range 36 [docfrag, 0, docfrag, 0], point 85 [doctype, 1] 
+PASS setStart() with range 36 [docfrag, 0, docfrag, 0], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 36 [docfrag, 0, docfrag, 0], point 87 [xmlDoctype, 0] 
 PASS setStart() with range 37 [processingInstruction, 0, processingInstruction, 4], point 0 [paras[0].firstChild, -1] 
 PASS setStart() with range 37 [processingInstruction, 0, processingInstruction, 4], point 1 [paras[0].firstChild, 0] 
 PASS setStart() with range 37 [processingInstruction, 0, processingInstruction, 4], point 2 [paras[0].firstChild, 1] 
@@ -3746,21 +3376,11 @@ PASS setStart() with range 37 [processingInstruction, 0, processingInstruction,
 PASS setStart() with range 37 [processingInstruction, 0, processingInstruction, 4], point 80 [docfrag, 0] 
 PASS setStart() with range 37 [processingInstruction, 0, processingInstruction, 4], point 81 [foreignDocfrag, 0] 
 PASS setStart() with range 37 [processingInstruction, 0, processingInstruction, 4], point 82 [xmlDocfrag, 0] 
-FAIL setStart() with range 37 [processingInstruction, 0, processingInstruction, 4], point 83 [doctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 37 [processingInstruction, 0, processingInstruction, 4], point 84 [doctype, -17] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 37 [processingInstruction, 0, processingInstruction, 4], point 85 [doctype, 1] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 37 [processingInstruction, 0, processingInstruction, 4], point 86 [foreignDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStart() with range 37 [processingInstruction, 0, processingInstruction, 4], point 87 [xmlDoctype, 0] assert_throws: setStart() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStart(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStart() with range 37 [processingInstruction, 0, processingInstruction, 4], point 83 [doctype, 0] 
+PASS setStart() with range 37 [processingInstruction, 0, processingInstruction, 4], point 84 [doctype, -17] 
+PASS setStart() with range 37 [processingInstruction, 0, processingInstruction, 4], point 85 [doctype, 1] 
+PASS setStart() with range 37 [processingInstruction, 0, processingInstruction, 4], point 86 [foreignDoctype, 0] 
+PASS setStart() with range 37 [processingInstruction, 0, processingInstruction, 4], point 87 [xmlDoctype, 0] 
 PASS setEnd() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 0 [paras[0].firstChild, -1] 
 PASS setEnd() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 1 [paras[0].firstChild, 0] 
 PASS setEnd() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 2 [paras[0].firstChild, 1] 
@@ -3844,21 +3464,11 @@ PASS setEnd() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], poi
 PASS setEnd() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 80 [docfrag, 0] 
 PASS setEnd() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 81 [foreignDocfrag, 0] 
 PASS setEnd() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 82 [xmlDocfrag, 0] 
-FAIL setEnd() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setEnd() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 83 [doctype, 0] 
+PASS setEnd() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 84 [doctype, -17] 
+PASS setEnd() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 85 [doctype, 1] 
+PASS setEnd() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], point 87 [xmlDoctype, 0] 
 PASS setEnd() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 0 [paras[0].firstChild, -1] 
 PASS setEnd() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 1 [paras[0].firstChild, 0] 
 PASS setEnd() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 2 [paras[0].firstChild, 1] 
@@ -3942,21 +3552,11 @@ PASS setEnd() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], poi
 PASS setEnd() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 80 [docfrag, 0] 
 PASS setEnd() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 81 [foreignDocfrag, 0] 
 PASS setEnd() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 82 [xmlDocfrag, 0] 
-FAIL setEnd() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setEnd() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 83 [doctype, 0] 
+PASS setEnd() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 84 [doctype, -17] 
+PASS setEnd() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 85 [doctype, 1] 
+PASS setEnd() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], point 87 [xmlDoctype, 0] 
 PASS setEnd() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 0 [paras[0].firstChild, -1] 
 PASS setEnd() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 1 [paras[0].firstChild, 0] 
 PASS setEnd() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 2 [paras[0].firstChild, 1] 
@@ -4040,21 +3640,11 @@ PASS setEnd() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], poi
 PASS setEnd() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 80 [docfrag, 0] 
 PASS setEnd() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 81 [foreignDocfrag, 0] 
 PASS setEnd() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 82 [xmlDocfrag, 0] 
-FAIL setEnd() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setEnd() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 83 [doctype, 0] 
+PASS setEnd() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 84 [doctype, -17] 
+PASS setEnd() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 85 [doctype, 1] 
+PASS setEnd() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], point 87 [xmlDoctype, 0] 
 PASS setEnd() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 0 [paras[0].firstChild, -1] 
 PASS setEnd() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 1 [paras[0].firstChild, 0] 
 PASS setEnd() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 2 [paras[0].firstChild, 1] 
@@ -4138,21 +3728,11 @@ PASS setEnd() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], poi
 PASS setEnd() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 80 [docfrag, 0] 
 PASS setEnd() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 81 [foreignDocfrag, 0] 
 PASS setEnd() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 82 [xmlDocfrag, 0] 
-FAIL setEnd() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setEnd() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 83 [doctype, 0] 
+PASS setEnd() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 84 [doctype, -17] 
+PASS setEnd() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 85 [doctype, 1] 
+PASS setEnd() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], point 87 [xmlDoctype, 0] 
 PASS setEnd() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 0 [paras[0].firstChild, -1] 
 PASS setEnd() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 1 [paras[0].firstChild, 0] 
 PASS setEnd() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 2 [paras[0].firstChild, 1] 
@@ -4236,21 +3816,11 @@ PASS setEnd() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], poi
 PASS setEnd() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 80 [docfrag, 0] 
 PASS setEnd() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 81 [foreignDocfrag, 0] 
 PASS setEnd() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 82 [xmlDocfrag, 0] 
-FAIL setEnd() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setEnd() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 83 [doctype, 0] 
+PASS setEnd() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 84 [doctype, -17] 
+PASS setEnd() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 85 [doctype, 1] 
+PASS setEnd() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], point 87 [xmlDoctype, 0] 
 PASS setEnd() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 0 [paras[0].firstChild, -1] 
 PASS setEnd() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 1 [paras[0].firstChild, 0] 
 PASS setEnd() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 2 [paras[0].firstChild, 1] 
@@ -4334,21 +3904,11 @@ PASS setEnd() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], poi
 PASS setEnd() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 80 [docfrag, 0] 
 PASS setEnd() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 81 [foreignDocfrag, 0] 
 PASS setEnd() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 82 [xmlDocfrag, 0] 
-FAIL setEnd() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setEnd() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 83 [doctype, 0] 
+PASS setEnd() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 84 [doctype, -17] 
+PASS setEnd() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 85 [doctype, 1] 
+PASS setEnd() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], point 87 [xmlDoctype, 0] 
 PASS setEnd() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 0 [paras[0].firstChild, -1] 
 PASS setEnd() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 1 [paras[0].firstChild, 0] 
 PASS setEnd() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 2 [paras[0].firstChild, 1] 
@@ -4432,21 +3992,11 @@ PASS setEnd() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChil
 PASS setEnd() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 80 [docfrag, 0] 
 PASS setEnd() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 81 [foreignDocfrag, 0] 
 PASS setEnd() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 82 [xmlDocfrag, 0] 
-FAIL setEnd() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setEnd() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 83 [doctype, 0] 
+PASS setEnd() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 84 [doctype, -17] 
+PASS setEnd() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 85 [doctype, 1] 
+PASS setEnd() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 6 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0], point 87 [xmlDoctype, 0] 
 PASS setEnd() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 0 [paras[0].firstChild, -1] 
 PASS setEnd() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 1 [paras[0].firstChild, 0] 
 PASS setEnd() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 2 [paras[0].firstChild, 1] 
@@ -4530,21 +4080,11 @@ PASS setEnd() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChil
 PASS setEnd() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 80 [docfrag, 0] 
 PASS setEnd() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 81 [foreignDocfrag, 0] 
 PASS setEnd() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 82 [xmlDocfrag, 0] 
-FAIL setEnd() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setEnd() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 83 [doctype, 0] 
+PASS setEnd() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 84 [doctype, -17] 
+PASS setEnd() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 85 [doctype, 1] 
+PASS setEnd() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 7 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8], point 87 [xmlDoctype, 0] 
 PASS setEnd() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 0 [paras[0].firstChild, -1] 
 PASS setEnd() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 1 [paras[0].firstChild, 0] 
 PASS setEnd() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 2 [paras[0].firstChild, 1] 
@@ -4628,21 +4168,11 @@ PASS setEnd() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild,
 PASS setEnd() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 80 [docfrag, 0] 
 PASS setEnd() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 81 [foreignDocfrag, 0] 
 PASS setEnd() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 82 [xmlDocfrag, 0] 
-FAIL setEnd() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setEnd() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 83 [doctype, 0] 
+PASS setEnd() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 84 [doctype, -17] 
+PASS setEnd() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 85 [doctype, 1] 
+PASS setEnd() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 8 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0], point 87 [xmlDoctype, 0] 
 PASS setEnd() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 0 [paras[0].firstChild, -1] 
 PASS setEnd() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 1 [paras[0].firstChild, 0] 
 PASS setEnd() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 2 [paras[0].firstChild, 1] 
@@ -4726,21 +4256,11 @@ PASS setEnd() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild,
 PASS setEnd() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 80 [docfrag, 0] 
 PASS setEnd() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 81 [foreignDocfrag, 0] 
 PASS setEnd() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 82 [xmlDocfrag, 0] 
-FAIL setEnd() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setEnd() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 83 [doctype, 0] 
+PASS setEnd() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 84 [doctype, -17] 
+PASS setEnd() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 85 [doctype, 1] 
+PASS setEnd() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 9 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8], point 87 [xmlDoctype, 0] 
 PASS setEnd() with range 10 [document.documentElement, 0, document.documentElement, 1], point 0 [paras[0].firstChild, -1] 
 PASS setEnd() with range 10 [document.documentElement, 0, document.documentElement, 1], point 1 [paras[0].firstChild, 0] 
 PASS setEnd() with range 10 [document.documentElement, 0, document.documentElement, 1], point 2 [paras[0].firstChild, 1] 
@@ -4824,21 +4344,11 @@ PASS setEnd() with range 10 [document.documentElement, 0, document.documentEleme
 PASS setEnd() with range 10 [document.documentElement, 0, document.documentElement, 1], point 80 [docfrag, 0] 
 PASS setEnd() with range 10 [document.documentElement, 0, document.documentElement, 1], point 81 [foreignDocfrag, 0] 
 PASS setEnd() with range 10 [document.documentElement, 0, document.documentElement, 1], point 82 [xmlDocfrag, 0] 
-FAIL setEnd() with range 10 [document.documentElement, 0, document.documentElement, 1], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 10 [document.documentElement, 0, document.documentElement, 1], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 10 [document.documentElement, 0, document.documentElement, 1], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 10 [document.documentElement, 0, document.documentElement, 1], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 10 [document.documentElement, 0, document.documentElement, 1], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setEnd() with range 10 [document.documentElement, 0, document.documentElement, 1], point 83 [doctype, 0] 
+PASS setEnd() with range 10 [document.documentElement, 0, document.documentElement, 1], point 84 [doctype, -17] 
+PASS setEnd() with range 10 [document.documentElement, 0, document.documentElement, 1], point 85 [doctype, 1] 
+PASS setEnd() with range 10 [document.documentElement, 0, document.documentElement, 1], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 10 [document.documentElement, 0, document.documentElement, 1], point 87 [xmlDoctype, 0] 
 PASS setEnd() with range 11 [document.documentElement, 0, document.documentElement, 2], point 0 [paras[0].firstChild, -1] 
 PASS setEnd() with range 11 [document.documentElement, 0, document.documentElement, 2], point 1 [paras[0].firstChild, 0] 
 PASS setEnd() with range 11 [document.documentElement, 0, document.documentElement, 2], point 2 [paras[0].firstChild, 1] 
@@ -4922,21 +4432,11 @@ PASS setEnd() with range 11 [document.documentElement, 0, document.documentEleme
 PASS setEnd() with range 11 [document.documentElement, 0, document.documentElement, 2], point 80 [docfrag, 0] 
 PASS setEnd() with range 11 [document.documentElement, 0, document.documentElement, 2], point 81 [foreignDocfrag, 0] 
 PASS setEnd() with range 11 [document.documentElement, 0, document.documentElement, 2], point 82 [xmlDocfrag, 0] 
-FAIL setEnd() with range 11 [document.documentElement, 0, document.documentElement, 2], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 11 [document.documentElement, 0, document.documentElement, 2], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 11 [document.documentElement, 0, document.documentElement, 2], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 11 [document.documentElement, 0, document.documentElement, 2], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 11 [document.documentElement, 0, document.documentElement, 2], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setEnd() with range 11 [document.documentElement, 0, document.documentElement, 2], point 83 [doctype, 0] 
+PASS setEnd() with range 11 [document.documentElement, 0, document.documentElement, 2], point 84 [doctype, -17] 
+PASS setEnd() with range 11 [document.documentElement, 0, document.documentElement, 2], point 85 [doctype, 1] 
+PASS setEnd() with range 11 [document.documentElement, 0, document.documentElement, 2], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 11 [document.documentElement, 0, document.documentElement, 2], point 87 [xmlDoctype, 0] 
 PASS setEnd() with range 12 [document.documentElement, 1, document.documentElement, 2], point 0 [paras[0].firstChild, -1] 
 PASS setEnd() with range 12 [document.documentElement, 1, document.documentElement, 2], point 1 [paras[0].firstChild, 0] 
 PASS setEnd() with range 12 [document.documentElement, 1, document.documentElement, 2], point 2 [paras[0].firstChild, 1] 
@@ -5020,21 +4520,11 @@ PASS setEnd() with range 12 [document.documentElement, 1, document.documentEleme
 PASS setEnd() with range 12 [document.documentElement, 1, document.documentElement, 2], point 80 [docfrag, 0] 
 PASS setEnd() with range 12 [document.documentElement, 1, document.documentElement, 2], point 81 [foreignDocfrag, 0] 
 PASS setEnd() with range 12 [document.documentElement, 1, document.documentElement, 2], point 82 [xmlDocfrag, 0] 
-FAIL setEnd() with range 12 [document.documentElement, 1, document.documentElement, 2], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 12 [document.documentElement, 1, document.documentElement, 2], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 12 [document.documentElement, 1, document.documentElement, 2], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 12 [document.documentElement, 1, document.documentElement, 2], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 12 [document.documentElement, 1, document.documentElement, 2], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setEnd() with range 12 [document.documentElement, 1, document.documentElement, 2], point 83 [doctype, 0] 
+PASS setEnd() with range 12 [document.documentElement, 1, document.documentElement, 2], point 84 [doctype, -17] 
+PASS setEnd() with range 12 [document.documentElement, 1, document.documentElement, 2], point 85 [doctype, 1] 
+PASS setEnd() with range 12 [document.documentElement, 1, document.documentElement, 2], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 12 [document.documentElement, 1, document.documentElement, 2], point 87 [xmlDoctype, 0] 
 PASS setEnd() with range 13 [document.head, 1, document.head, 1], point 0 [paras[0].firstChild, -1] 
 PASS setEnd() with range 13 [document.head, 1, document.head, 1], point 1 [paras[0].firstChild, 0] 
 PASS setEnd() with range 13 [document.head, 1, document.head, 1], point 2 [paras[0].firstChild, 1] 
@@ -5118,21 +4608,11 @@ PASS setEnd() with range 13 [document.head, 1, document.head, 1], point 79 [deta
 PASS setEnd() with range 13 [document.head, 1, document.head, 1], point 80 [docfrag, 0] 
 PASS setEnd() with range 13 [document.head, 1, document.head, 1], point 81 [foreignDocfrag, 0] 
 PASS setEnd() with range 13 [document.head, 1, document.head, 1], point 82 [xmlDocfrag, 0] 
-FAIL setEnd() with range 13 [document.head, 1, document.head, 1], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 13 [document.head, 1, document.head, 1], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 13 [document.head, 1, document.head, 1], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 13 [document.head, 1, document.head, 1], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 13 [document.head, 1, document.head, 1], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setEnd() with range 13 [document.head, 1, document.head, 1], point 83 [doctype, 0] 
+PASS setEnd() with range 13 [document.head, 1, document.head, 1], point 84 [doctype, -17] 
+PASS setEnd() with range 13 [document.head, 1, document.head, 1], point 85 [doctype, 1] 
+PASS setEnd() with range 13 [document.head, 1, document.head, 1], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 13 [document.head, 1, document.head, 1], point 87 [xmlDoctype, 0] 
 PASS setEnd() with range 14 [document.body, 4, document.body, 5], point 0 [paras[0].firstChild, -1] 
 PASS setEnd() with range 14 [document.body, 4, document.body, 5], point 1 [paras[0].firstChild, 0] 
 PASS setEnd() with range 14 [document.body, 4, document.body, 5], point 2 [paras[0].firstChild, 1] 
@@ -5216,21 +4696,11 @@ PASS setEnd() with range 14 [document.body, 4, document.body, 5], point 79 [deta
 PASS setEnd() with range 14 [document.body, 4, document.body, 5], point 80 [docfrag, 0] 
 PASS setEnd() with range 14 [document.body, 4, document.body, 5], point 81 [foreignDocfrag, 0] 
 PASS setEnd() with range 14 [document.body, 4, document.body, 5], point 82 [xmlDocfrag, 0] 
-FAIL setEnd() with range 14 [document.body, 4, document.body, 5], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 14 [document.body, 4, document.body, 5], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 14 [document.body, 4, document.body, 5], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 14 [document.body, 4, document.body, 5], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 14 [document.body, 4, document.body, 5], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setEnd() with range 14 [document.body, 4, document.body, 5], point 83 [doctype, 0] 
+PASS setEnd() with range 14 [document.body, 4, document.body, 5], point 84 [doctype, -17] 
+PASS setEnd() with range 14 [document.body, 4, document.body, 5], point 85 [doctype, 1] 
+PASS setEnd() with range 14 [document.body, 4, document.body, 5], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 14 [document.body, 4, document.body, 5], point 87 [xmlDoctype, 0] 
 PASS setEnd() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 0 [paras[0].firstChild, -1] 
 PASS setEnd() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 1 [paras[0].firstChild, 0] 
 PASS setEnd() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 2 [paras[0].firstChild, 1] 
@@ -5314,21 +4784,11 @@ PASS setEnd() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentE
 PASS setEnd() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 80 [docfrag, 0] 
 PASS setEnd() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 81 [foreignDocfrag, 0] 
 PASS setEnd() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 82 [xmlDocfrag, 0] 
-FAIL setEnd() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setEnd() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 83 [doctype, 0] 
+PASS setEnd() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 84 [doctype, -17] 
+PASS setEnd() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 85 [doctype, 1] 
+PASS setEnd() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 15 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1], point 87 [xmlDoctype, 0] 
 PASS setEnd() with range 16 [paras[0], 0, paras[0], 1], point 0 [paras[0].firstChild, -1] 
 PASS setEnd() with range 16 [paras[0], 0, paras[0], 1], point 1 [paras[0].firstChild, 0] 
 PASS setEnd() with range 16 [paras[0], 0, paras[0], 1], point 2 [paras[0].firstChild, 1] 
@@ -5412,21 +4872,11 @@ PASS setEnd() with range 16 [paras[0], 0, paras[0], 1], point 79 [detachedXmlCom
 PASS setEnd() with range 16 [paras[0], 0, paras[0], 1], point 80 [docfrag, 0] 
 PASS setEnd() with range 16 [paras[0], 0, paras[0], 1], point 81 [foreignDocfrag, 0] 
 PASS setEnd() with range 16 [paras[0], 0, paras[0], 1], point 82 [xmlDocfrag, 0] 
-FAIL setEnd() with range 16 [paras[0], 0, paras[0], 1], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 16 [paras[0], 0, paras[0], 1], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 16 [paras[0], 0, paras[0], 1], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 16 [paras[0], 0, paras[0], 1], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 16 [paras[0], 0, paras[0], 1], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setEnd() with range 16 [paras[0], 0, paras[0], 1], point 83 [doctype, 0] 
+PASS setEnd() with range 16 [paras[0], 0, paras[0], 1], point 84 [doctype, -17] 
+PASS setEnd() with range 16 [paras[0], 0, paras[0], 1], point 85 [doctype, 1] 
+PASS setEnd() with range 16 [paras[0], 0, paras[0], 1], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 16 [paras[0], 0, paras[0], 1], point 87 [xmlDoctype, 0] 
 PASS setEnd() with range 17 [detachedPara1, 0, detachedPara1, 1], point 0 [paras[0].firstChild, -1] 
 PASS setEnd() with range 17 [detachedPara1, 0, detachedPara1, 1], point 1 [paras[0].firstChild, 0] 
 PASS setEnd() with range 17 [detachedPara1, 0, detachedPara1, 1], point 2 [paras[0].firstChild, 1] 
@@ -5510,21 +4960,11 @@ PASS setEnd() with range 17 [detachedPara1, 0, detachedPara1, 1], point 79 [deta
 PASS setEnd() with range 17 [detachedPara1, 0, detachedPara1, 1], point 80 [docfrag, 0] 
 PASS setEnd() with range 17 [detachedPara1, 0, detachedPara1, 1], point 81 [foreignDocfrag, 0] 
 PASS setEnd() with range 17 [detachedPara1, 0, detachedPara1, 1], point 82 [xmlDocfrag, 0] 
-FAIL setEnd() with range 17 [detachedPara1, 0, detachedPara1, 1], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 17 [detachedPara1, 0, detachedPara1, 1], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 17 [detachedPara1, 0, detachedPara1, 1], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 17 [detachedPara1, 0, detachedPara1, 1], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 17 [detachedPara1, 0, detachedPara1, 1], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setEnd() with range 17 [detachedPara1, 0, detachedPara1, 1], point 83 [doctype, 0] 
+PASS setEnd() with range 17 [detachedPara1, 0, detachedPara1, 1], point 84 [doctype, -17] 
+PASS setEnd() with range 17 [detachedPara1, 0, detachedPara1, 1], point 85 [doctype, 1] 
+PASS setEnd() with range 17 [detachedPara1, 0, detachedPara1, 1], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 17 [detachedPara1, 0, detachedPara1, 1], point 87 [xmlDoctype, 0] 
 PASS setEnd() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 0 [paras[0].firstChild, -1] 
 PASS setEnd() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 1 [paras[0].firstChild, 0] 
 PASS setEnd() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 2 [paras[0].firstChild, 1] 
@@ -5608,21 +5048,11 @@ PASS setEnd() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], po
 PASS setEnd() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 80 [docfrag, 0] 
 PASS setEnd() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 81 [foreignDocfrag, 0] 
 PASS setEnd() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 82 [xmlDocfrag, 0] 
-FAIL setEnd() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setEnd() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 83 [doctype, 0] 
+PASS setEnd() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 84 [doctype, -17] 
+PASS setEnd() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 85 [doctype, 1] 
+PASS setEnd() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 18 [paras[0].firstChild, 0, paras[1].firstChild, 0], point 87 [xmlDoctype, 0] 
 PASS setEnd() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 0 [paras[0].firstChild, -1] 
 PASS setEnd() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 1 [paras[0].firstChild, 0] 
 PASS setEnd() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 2 [paras[0].firstChild, 1] 
@@ -5706,21 +5136,11 @@ PASS setEnd() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], po
 PASS setEnd() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 80 [docfrag, 0] 
 PASS setEnd() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 81 [foreignDocfrag, 0] 
 PASS setEnd() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 82 [xmlDocfrag, 0] 
-FAIL setEnd() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setEnd() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 83 [doctype, 0] 
+PASS setEnd() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 84 [doctype, -17] 
+PASS setEnd() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 85 [doctype, 1] 
+PASS setEnd() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 19 [paras[0].firstChild, 0, paras[1].firstChild, 8], point 87 [xmlDoctype, 0] 
 PASS setEnd() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 0 [paras[0].firstChild, -1] 
 PASS setEnd() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 1 [paras[0].firstChild, 0] 
 PASS setEnd() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 2 [paras[0].firstChild, 1] 
@@ -5804,21 +5224,11 @@ PASS setEnd() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 79 [det
 PASS setEnd() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 80 [docfrag, 0] 
 PASS setEnd() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 81 [foreignDocfrag, 0] 
 PASS setEnd() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 82 [xmlDocfrag, 0] 
-FAIL setEnd() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setEnd() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 83 [doctype, 0] 
+PASS setEnd() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 84 [doctype, -17] 
+PASS setEnd() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 85 [doctype, 1] 
+PASS setEnd() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 20 [paras[0].firstChild, 3, paras[3], 1], point 87 [xmlDoctype, 0] 
 PASS setEnd() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 0 [paras[0].firstChild, -1] 
 PASS setEnd() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 1 [paras[0].firstChild, 0] 
 PASS setEnd() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 2 [paras[0].firstChild, 1] 
@@ -5902,21 +5312,11 @@ PASS setEnd() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 79 [det
 PASS setEnd() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 80 [docfrag, 0] 
 PASS setEnd() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 81 [foreignDocfrag, 0] 
 PASS setEnd() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 82 [xmlDocfrag, 0] 
-FAIL setEnd() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setEnd() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 83 [doctype, 0] 
+PASS setEnd() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 84 [doctype, -17] 
+PASS setEnd() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 85 [doctype, 1] 
+PASS setEnd() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 21 [paras[0], 0, paras[0].firstChild, 7], point 87 [xmlDoctype, 0] 
 PASS setEnd() with range 22 [testDiv, 2, paras[4], 1], point 0 [paras[0].firstChild, -1] 
 PASS setEnd() with range 22 [testDiv, 2, paras[4], 1], point 1 [paras[0].firstChild, 0] 
 PASS setEnd() with range 22 [testDiv, 2, paras[4], 1], point 2 [paras[0].firstChild, 1] 
@@ -6000,21 +5400,11 @@ PASS setEnd() with range 22 [testDiv, 2, paras[4], 1], point 79 [detachedXmlComm
 PASS setEnd() with range 22 [testDiv, 2, paras[4], 1], point 80 [docfrag, 0] 
 PASS setEnd() with range 22 [testDiv, 2, paras[4], 1], point 81 [foreignDocfrag, 0] 
 PASS setEnd() with range 22 [testDiv, 2, paras[4], 1], point 82 [xmlDocfrag, 0] 
-FAIL setEnd() with range 22 [testDiv, 2, paras[4], 1], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 22 [testDiv, 2, paras[4], 1], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 22 [testDiv, 2, paras[4], 1], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 22 [testDiv, 2, paras[4], 1], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 22 [testDiv, 2, paras[4], 1], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setEnd() with range 22 [testDiv, 2, paras[4], 1], point 83 [doctype, 0] 
+PASS setEnd() with range 22 [testDiv, 2, paras[4], 1], point 84 [doctype, -17] 
+PASS setEnd() with range 22 [testDiv, 2, paras[4], 1], point 85 [doctype, 1] 
+PASS setEnd() with range 22 [testDiv, 2, paras[4], 1], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 22 [testDiv, 2, paras[4], 1], point 87 [xmlDoctype, 0] 
 PASS setEnd() with range 23 [document, 0, document, 1], point 0 [paras[0].firstChild, -1] 
 PASS setEnd() with range 23 [document, 0, document, 1], point 1 [paras[0].firstChild, 0] 
 PASS setEnd() with range 23 [document, 0, document, 1], point 2 [paras[0].firstChild, 1] 
@@ -6098,21 +5488,11 @@ PASS setEnd() with range 23 [document, 0, document, 1], point 79 [detachedXmlCom
 PASS setEnd() with range 23 [document, 0, document, 1], point 80 [docfrag, 0] 
 PASS setEnd() with range 23 [document, 0, document, 1], point 81 [foreignDocfrag, 0] 
 PASS setEnd() with range 23 [document, 0, document, 1], point 82 [xmlDocfrag, 0] 
-FAIL setEnd() with range 23 [document, 0, document, 1], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 23 [document, 0, document, 1], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 23 [document, 0, document, 1], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 23 [document, 0, document, 1], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 23 [document, 0, document, 1], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setEnd() with range 23 [document, 0, document, 1], point 83 [doctype, 0] 
+PASS setEnd() with range 23 [document, 0, document, 1], point 84 [doctype, -17] 
+PASS setEnd() with range 23 [document, 0, document, 1], point 85 [doctype, 1] 
+PASS setEnd() with range 23 [document, 0, document, 1], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 23 [document, 0, document, 1], point 87 [xmlDoctype, 0] 
 PASS setEnd() with range 24 [document, 0, document, 2], point 0 [paras[0].firstChild, -1] 
 PASS setEnd() with range 24 [document, 0, document, 2], point 1 [paras[0].firstChild, 0] 
 PASS setEnd() with range 24 [document, 0, document, 2], point 2 [paras[0].firstChild, 1] 
@@ -6196,21 +5576,11 @@ PASS setEnd() with range 24 [document, 0, document, 2], point 79 [detachedXmlCom
 PASS setEnd() with range 24 [document, 0, document, 2], point 80 [docfrag, 0] 
 PASS setEnd() with range 24 [document, 0, document, 2], point 81 [foreignDocfrag, 0] 
 PASS setEnd() with range 24 [document, 0, document, 2], point 82 [xmlDocfrag, 0] 
-FAIL setEnd() with range 24 [document, 0, document, 2], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 24 [document, 0, document, 2], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 24 [document, 0, document, 2], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 24 [document, 0, document, 2], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 24 [document, 0, document, 2], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setEnd() with range 24 [document, 0, document, 2], point 83 [doctype, 0] 
+PASS setEnd() with range 24 [document, 0, document, 2], point 84 [doctype, -17] 
+PASS setEnd() with range 24 [document, 0, document, 2], point 85 [doctype, 1] 
+PASS setEnd() with range 24 [document, 0, document, 2], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 24 [document, 0, document, 2], point 87 [xmlDoctype, 0] 
 PASS setEnd() with range 25 [comment, 2, comment, 3], point 0 [paras[0].firstChild, -1] 
 PASS setEnd() with range 25 [comment, 2, comment, 3], point 1 [paras[0].firstChild, 0] 
 PASS setEnd() with range 25 [comment, 2, comment, 3], point 2 [paras[0].firstChild, 1] 
@@ -6294,21 +5664,11 @@ PASS setEnd() with range 25 [comment, 2, comment, 3], point 79 [detachedXmlComme
 PASS setEnd() with range 25 [comment, 2, comment, 3], point 80 [docfrag, 0] 
 PASS setEnd() with range 25 [comment, 2, comment, 3], point 81 [foreignDocfrag, 0] 
 PASS setEnd() with range 25 [comment, 2, comment, 3], point 82 [xmlDocfrag, 0] 
-FAIL setEnd() with range 25 [comment, 2, comment, 3], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 25 [comment, 2, comment, 3], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 25 [comment, 2, comment, 3], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 25 [comment, 2, comment, 3], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 25 [comment, 2, comment, 3], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setEnd() with range 25 [comment, 2, comment, 3], point 83 [doctype, 0] 
+PASS setEnd() with range 25 [comment, 2, comment, 3], point 84 [doctype, -17] 
+PASS setEnd() with range 25 [comment, 2, comment, 3], point 85 [doctype, 1] 
+PASS setEnd() with range 25 [comment, 2, comment, 3], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 25 [comment, 2, comment, 3], point 87 [xmlDoctype, 0] 
 PASS setEnd() with range 26 [testDiv, 0, comment, 5], point 0 [paras[0].firstChild, -1] 
 PASS setEnd() with range 26 [testDiv, 0, comment, 5], point 1 [paras[0].firstChild, 0] 
 PASS setEnd() with range 26 [testDiv, 0, comment, 5], point 2 [paras[0].firstChild, 1] 
@@ -6392,21 +5752,11 @@ PASS setEnd() with range 26 [testDiv, 0, comment, 5], point 79 [detachedXmlComme
 PASS setEnd() with range 26 [testDiv, 0, comment, 5], point 80 [docfrag, 0] 
 PASS setEnd() with range 26 [testDiv, 0, comment, 5], point 81 [foreignDocfrag, 0] 
 PASS setEnd() with range 26 [testDiv, 0, comment, 5], point 82 [xmlDocfrag, 0] 
-FAIL setEnd() with range 26 [testDiv, 0, comment, 5], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 26 [testDiv, 0, comment, 5], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 26 [testDiv, 0, comment, 5], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 26 [testDiv, 0, comment, 5], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 26 [testDiv, 0, comment, 5], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setEnd() with range 26 [testDiv, 0, comment, 5], point 83 [doctype, 0] 
+PASS setEnd() with range 26 [testDiv, 0, comment, 5], point 84 [doctype, -17] 
+PASS setEnd() with range 26 [testDiv, 0, comment, 5], point 85 [doctype, 1] 
+PASS setEnd() with range 26 [testDiv, 0, comment, 5], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 26 [testDiv, 0, comment, 5], point 87 [xmlDoctype, 0] 
 PASS setEnd() with range 27 [foreignDoc, 1, foreignComment, 2], point 0 [paras[0].firstChild, -1] 
 PASS setEnd() with range 27 [foreignDoc, 1, foreignComment, 2], point 1 [paras[0].firstChild, 0] 
 PASS setEnd() with range 27 [foreignDoc, 1, foreignComment, 2], point 2 [paras[0].firstChild, 1] 
@@ -6490,21 +5840,11 @@ PASS setEnd() with range 27 [foreignDoc, 1, foreignComment, 2], point 79 [detach
 PASS setEnd() with range 27 [foreignDoc, 1, foreignComment, 2], point 80 [docfrag, 0] 
 PASS setEnd() with range 27 [foreignDoc, 1, foreignComment, 2], point 81 [foreignDocfrag, 0] 
 PASS setEnd() with range 27 [foreignDoc, 1, foreignComment, 2], point 82 [xmlDocfrag, 0] 
-FAIL setEnd() with range 27 [foreignDoc, 1, foreignComment, 2], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 27 [foreignDoc, 1, foreignComment, 2], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 27 [foreignDoc, 1, foreignComment, 2], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 27 [foreignDoc, 1, foreignComment, 2], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 27 [foreignDoc, 1, foreignComment, 2], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setEnd() with range 27 [foreignDoc, 1, foreignComment, 2], point 83 [doctype, 0] 
+PASS setEnd() with range 27 [foreignDoc, 1, foreignComment, 2], point 84 [doctype, -17] 
+PASS setEnd() with range 27 [foreignDoc, 1, foreignComment, 2], point 85 [doctype, 1] 
+PASS setEnd() with range 27 [foreignDoc, 1, foreignComment, 2], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 27 [foreignDoc, 1, foreignComment, 2], point 87 [xmlDoctype, 0] 
 PASS setEnd() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 0 [paras[0].firstChild, -1] 
 PASS setEnd() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 1 [paras[0].firstChild, 0] 
 PASS setEnd() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 2 [paras[0].firstChild, 1] 
@@ -6588,21 +5928,11 @@ PASS setEnd() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 79
 PASS setEnd() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 80 [docfrag, 0] 
 PASS setEnd() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 81 [foreignDocfrag, 0] 
 PASS setEnd() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 82 [xmlDocfrag, 0] 
-FAIL setEnd() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setEnd() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 83 [doctype, 0] 
+PASS setEnd() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 84 [doctype, -17] 
+PASS setEnd() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 85 [doctype, 1] 
+PASS setEnd() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 28 [foreignDoc.body, 0, foreignTextNode, 36], point 87 [xmlDoctype, 0] 
 PASS setEnd() with range 29 [xmlDoc, 1, xmlComment, 0], point 0 [paras[0].firstChild, -1] 
 PASS setEnd() with range 29 [xmlDoc, 1, xmlComment, 0], point 1 [paras[0].firstChild, 0] 
 PASS setEnd() with range 29 [xmlDoc, 1, xmlComment, 0], point 2 [paras[0].firstChild, 1] 
@@ -6686,21 +6016,11 @@ PASS setEnd() with range 29 [xmlDoc, 1, xmlComment, 0], point 79 [detachedXmlCom
 PASS setEnd() with range 29 [xmlDoc, 1, xmlComment, 0], point 80 [docfrag, 0] 
 PASS setEnd() with range 29 [xmlDoc, 1, xmlComment, 0], point 81 [foreignDocfrag, 0] 
 PASS setEnd() with range 29 [xmlDoc, 1, xmlComment, 0], point 82 [xmlDocfrag, 0] 
-FAIL setEnd() with range 29 [xmlDoc, 1, xmlComment, 0], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 29 [xmlDoc, 1, xmlComment, 0], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 29 [xmlDoc, 1, xmlComment, 0], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 29 [xmlDoc, 1, xmlComment, 0], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 29 [xmlDoc, 1, xmlComment, 0], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setEnd() with range 29 [xmlDoc, 1, xmlComment, 0], point 83 [doctype, 0] 
+PASS setEnd() with range 29 [xmlDoc, 1, xmlComment, 0], point 84 [doctype, -17] 
+PASS setEnd() with range 29 [xmlDoc, 1, xmlComment, 0], point 85 [doctype, 1] 
+PASS setEnd() with range 29 [xmlDoc, 1, xmlComment, 0], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 29 [xmlDoc, 1, xmlComment, 0], point 87 [xmlDoctype, 0] 
 PASS setEnd() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 0 [paras[0].firstChild, -1] 
 PASS setEnd() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 1 [paras[0].firstChild, 0] 
 PASS setEnd() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 2 [paras[0].firstChild, 1] 
@@ -6784,21 +6104,11 @@ PASS setEnd() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 79
 PASS setEnd() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 80 [docfrag, 0] 
 PASS setEnd() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 81 [foreignDocfrag, 0] 
 PASS setEnd() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 82 [xmlDocfrag, 0] 
-FAIL setEnd() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setEnd() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 83 [doctype, 0] 
+PASS setEnd() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 84 [doctype, -17] 
+PASS setEnd() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 85 [doctype, 1] 
+PASS setEnd() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 30 [detachedTextNode, 0, detachedTextNode, 8], point 87 [xmlDoctype, 0] 
 PASS setEnd() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 0 [paras[0].firstChild, -1] 
 PASS setEnd() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 1 [paras[0].firstChild, 0] 
 PASS setEnd() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 2 [paras[0].firstChild, 1] 
@@ -6882,21 +6192,11 @@ PASS setEnd() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode
 PASS setEnd() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 80 [docfrag, 0] 
 PASS setEnd() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 81 [foreignDocfrag, 0] 
 PASS setEnd() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 82 [xmlDocfrag, 0] 
-FAIL setEnd() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setEnd() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 83 [doctype, 0] 
+PASS setEnd() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 84 [doctype, -17] 
+PASS setEnd() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 85 [doctype, 1] 
+PASS setEnd() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 31 [detachedForeignTextNode, 0, detachedForeignTextNode, 8], point 87 [xmlDoctype, 0] 
 PASS setEnd() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 0 [paras[0].firstChild, -1] 
 PASS setEnd() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 1 [paras[0].firstChild, 0] 
 PASS setEnd() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 2 [paras[0].firstChild, 1] 
@@ -6980,21 +6280,11 @@ PASS setEnd() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], po
 PASS setEnd() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 80 [docfrag, 0] 
 PASS setEnd() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 81 [foreignDocfrag, 0] 
 PASS setEnd() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 82 [xmlDocfrag, 0] 
-FAIL setEnd() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setEnd() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 83 [doctype, 0] 
+PASS setEnd() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 84 [doctype, -17] 
+PASS setEnd() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 85 [doctype, 1] 
+PASS setEnd() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 32 [detachedXmlTextNode, 0, detachedXmlTextNode, 8], point 87 [xmlDoctype, 0] 
 PASS setEnd() with range 33 [detachedComment, 3, detachedComment, 4], point 0 [paras[0].firstChild, -1] 
 PASS setEnd() with range 33 [detachedComment, 3, detachedComment, 4], point 1 [paras[0].firstChild, 0] 
 PASS setEnd() with range 33 [detachedComment, 3, detachedComment, 4], point 2 [paras[0].firstChild, 1] 
@@ -7078,21 +6368,11 @@ PASS setEnd() with range 33 [detachedComment, 3, detachedComment, 4], point 79 [
 PASS setEnd() with range 33 [detachedComment, 3, detachedComment, 4], point 80 [docfrag, 0] 
 PASS setEnd() with range 33 [detachedComment, 3, detachedComment, 4], point 81 [foreignDocfrag, 0] 
 PASS setEnd() with range 33 [detachedComment, 3, detachedComment, 4], point 82 [xmlDocfrag, 0] 
-FAIL setEnd() with range 33 [detachedComment, 3, detachedComment, 4], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 33 [detachedComment, 3, detachedComment, 4], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 33 [detachedComment, 3, detachedComment, 4], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 33 [detachedComment, 3, detachedComment, 4], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 33 [detachedComment, 3, detachedComment, 4], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setEnd() with range 33 [detachedComment, 3, detachedComment, 4], point 83 [doctype, 0] 
+PASS setEnd() with range 33 [detachedComment, 3, detachedComment, 4], point 84 [doctype, -17] 
+PASS setEnd() with range 33 [detachedComment, 3, detachedComment, 4], point 85 [doctype, 1] 
+PASS setEnd() with range 33 [detachedComment, 3, detachedComment, 4], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 33 [detachedComment, 3, detachedComment, 4], point 87 [xmlDoctype, 0] 
 PASS setEnd() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 0 [paras[0].firstChild, -1] 
 PASS setEnd() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 1 [paras[0].firstChild, 0] 
 PASS setEnd() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 2 [paras[0].firstChild, 1] 
@@ -7176,21 +6456,11 @@ PASS setEnd() with range 34 [detachedForeignComment, 0, detachedForeignComment,
 PASS setEnd() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 80 [docfrag, 0] 
 PASS setEnd() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 81 [foreignDocfrag, 0] 
 PASS setEnd() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 82 [xmlDocfrag, 0] 
-FAIL setEnd() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setEnd() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 83 [doctype, 0] 
+PASS setEnd() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 84 [doctype, -17] 
+PASS setEnd() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 85 [doctype, 1] 
+PASS setEnd() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 34 [detachedForeignComment, 0, detachedForeignComment, 1], point 87 [xmlDoctype, 0] 
 PASS setEnd() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 0 [paras[0].firstChild, -1] 
 PASS setEnd() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 1 [paras[0].firstChild, 0] 
 PASS setEnd() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 2 [paras[0].firstChild, 1] 
@@ -7274,21 +6544,11 @@ PASS setEnd() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], poin
 PASS setEnd() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 80 [docfrag, 0] 
 PASS setEnd() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 81 [foreignDocfrag, 0] 
 PASS setEnd() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 82 [xmlDocfrag, 0] 
-FAIL setEnd() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setEnd() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 83 [doctype, 0] 
+PASS setEnd() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 84 [doctype, -17] 
+PASS setEnd() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 85 [doctype, 1] 
+PASS setEnd() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 35 [detachedXmlComment, 2, detachedXmlComment, 6], point 87 [xmlDoctype, 0] 
 PASS setEnd() with range 36 [docfrag, 0, docfrag, 0], point 0 [paras[0].firstChild, -1] 
 PASS setEnd() with range 36 [docfrag, 0, docfrag, 0], point 1 [paras[0].firstChild, 0] 
 PASS setEnd() with range 36 [docfrag, 0, docfrag, 0], point 2 [paras[0].firstChild, 1] 
@@ -7372,21 +6632,11 @@ PASS setEnd() with range 36 [docfrag, 0, docfrag, 0], point 79 [detachedXmlComme
 PASS setEnd() with range 36 [docfrag, 0, docfrag, 0], point 80 [docfrag, 0] 
 PASS setEnd() with range 36 [docfrag, 0, docfrag, 0], point 81 [foreignDocfrag, 0] 
 PASS setEnd() with range 36 [docfrag, 0, docfrag, 0], point 82 [xmlDocfrag, 0] 
-FAIL setEnd() with range 36 [docfrag, 0, docfrag, 0], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 36 [docfrag, 0, docfrag, 0], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 36 [docfrag, 0, docfrag, 0], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 36 [docfrag, 0, docfrag, 0], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 36 [docfrag, 0, docfrag, 0], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setEnd() with range 36 [docfrag, 0, docfrag, 0], point 83 [doctype, 0] 
+PASS setEnd() with range 36 [docfrag, 0, docfrag, 0], point 84 [doctype, -17] 
+PASS setEnd() with range 36 [docfrag, 0, docfrag, 0], point 85 [doctype, 1] 
+PASS setEnd() with range 36 [docfrag, 0, docfrag, 0], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 36 [docfrag, 0, docfrag, 0], point 87 [xmlDoctype, 0] 
 PASS setEnd() with range 37 [processingInstruction, 0, processingInstruction, 4], point 0 [paras[0].firstChild, -1] 
 PASS setEnd() with range 37 [processingInstruction, 0, processingInstruction, 4], point 1 [paras[0].firstChild, 0] 
 PASS setEnd() with range 37 [processingInstruction, 0, processingInstruction, 4], point 2 [paras[0].firstChild, 1] 
@@ -7470,21 +6720,11 @@ PASS setEnd() with range 37 [processingInstruction, 0, processingInstruction, 4]
 PASS setEnd() with range 37 [processingInstruction, 0, processingInstruction, 4], point 80 [docfrag, 0] 
 PASS setEnd() with range 37 [processingInstruction, 0, processingInstruction, 4], point 81 [foreignDocfrag, 0] 
 PASS setEnd() with range 37 [processingInstruction, 0, processingInstruction, 4], point 82 [xmlDocfrag, 0] 
-FAIL setEnd() with range 37 [processingInstruction, 0, processingInstruction, 4], point 83 [doctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 37 [processingInstruction, 0, processingInstruction, 4], point 84 [doctype, -17] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 37 [processingInstruction, 0, processingInstruction, 4], point 85 [doctype, 1] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 37 [processingInstruction, 0, processingInstruction, 4], point 86 [foreignDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setEnd() with range 37 [processingInstruction, 0, processingInstruction, 4], point 87 [xmlDoctype, 0] assert_throws: setEnd() to a doctype must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setEnd(node, offset);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setEnd() with range 37 [processingInstruction, 0, processingInstruction, 4], point 83 [doctype, 0] 
+PASS setEnd() with range 37 [processingInstruction, 0, processingInstruction, 4], point 84 [doctype, -17] 
+PASS setEnd() with range 37 [processingInstruction, 0, processingInstruction, 4], point 85 [doctype, 1] 
+PASS setEnd() with range 37 [processingInstruction, 0, processingInstruction, 4], point 86 [foreignDoctype, 0] 
+PASS setEnd() with range 37 [processingInstruction, 0, processingInstruction, 4], point 87 [xmlDoctype, 0] 
 PASS setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 0 paras[0] 
 PASS setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 1 paras[0].firstChild 
 PASS setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 2 paras[1].firstChild 
@@ -7492,35 +6732,19 @@ PASS setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild,
 PASS setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 4 foreignPara1.firstChild 
 PASS setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 5 detachedPara1 
 PASS setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 6 detachedPara1.firstChild 
-FAIL setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 7 document assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStartBefore(node);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 8 detachedDiv assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStartBefore(node);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 9 foreignDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStartBefore(node);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 7 document 
+PASS setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 8 detachedDiv 
+PASS setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 9 foreignDoc 
 PASS setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 10 foreignPara2 
-FAIL setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 11 xmlDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStartBefore(node);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 11 xmlDoc 
 PASS setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 12 xmlElement 
-FAIL setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 13 detachedTextNode assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStartBefore(node);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 13 detachedTextNode 
 PASS setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 14 foreignTextNode 
 PASS setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 15 processingInstruction 
-FAIL setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 16 detachedProcessingInstruction assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStartBefore(node);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 16 detachedProcessingInstruction 
 PASS setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 17 comment 
-FAIL setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 18 detachedComment assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStartBefore(node);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 19 docfrag assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStartBefore(node);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 18 detachedComment 
+PASS setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 19 docfrag 
 PASS setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 20 doctype 
 PASS setStartBefore() with range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0], node 21 foreignDoctype 
 PASS setStartBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 0 paras[0] 
@@ -7530,35 +6754,19 @@ PASS setStartBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild,
 PASS setStartBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 4 foreignPara1.firstChild 
 PASS setStartBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 5 detachedPara1 
 PASS setStartBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 6 detachedPara1.firstChild 
-FAIL setStartBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 7 document assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStartBefore(node);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStartBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 8 detachedDiv assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStartBefore(node);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStartBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 9 foreignDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStartBefore(node);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStartBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 7 document 
+PASS setStartBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 8 detachedDiv 
+PASS setStartBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 9 foreignDoc 
 PASS setStartBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 10 foreignPara2 
-FAIL setStartBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 11 xmlDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStartBefore(node);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStartBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 11 xmlDoc 
 PASS setStartBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 12 xmlElement 
-FAIL setStartBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 13 detachedTextNode assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStartBefore(node);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStartBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 13 detachedTextNode 
 PASS setStartBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 14 foreignTextNode 
 PASS setStartBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 15 processingInstruction 
-FAIL setStartBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 16 detachedProcessingInstruction assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStartBefore(node);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStartBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 16 detachedProcessingInstruction 
 PASS setStartBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 17 comment 
-FAIL setStartBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 18 detachedComment assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStartBefore(node);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStartBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 19 docfrag assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStartBefore(node);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStartBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 18 detachedComment 
+PASS setStartBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 19 docfrag 
 PASS setStartBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 20 doctype 
 PASS setStartBefore() with range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1], node 21 foreignDoctype 
 PASS setStartBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 0 paras[0] 
@@ -7568,35 +6776,19 @@ PASS setStartBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild,
 PASS setStartBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 4 foreignPara1.firstChild 
 PASS setStartBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 5 detachedPara1 
 PASS setStartBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 6 detachedPara1.firstChild 
-FAIL setStartBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 7 document assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStartBefore(node);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStartBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 8 detachedDiv assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStartBefore(node);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStartBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 9 foreignDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStartBefore(node);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStartBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 7 document 
+PASS setStartBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 8 detachedDiv 
+PASS setStartBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 9 foreignDoc 
 PASS setStartBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 10 foreignPara2 
-FAIL setStartBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 11 xmlDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStartBefore(node);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStartBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 11 xmlDoc 
 PASS setStartBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 12 xmlElement 
-FAIL setStartBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 13 detachedTextNode assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStartBefore(node);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStartBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 13 detachedTextNode 
 PASS setStartBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 14 foreignTextNode 
 PASS setStartBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 15 processingInstruction 
-FAIL setStartBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 16 detachedProcessingInstruction assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStartBefore(node);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStartBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 16 detachedProcessingInstruction 
 PASS setStartBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 17 comment 
-FAIL setStartBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 18 detachedComment assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStartBefore(node);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStartBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 19 docfrag assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStartBefore(node);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStartBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 18 detachedComment 
+PASS setStartBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 19 docfrag 
 PASS setStartBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 20 doctype 
 PASS setStartBefore() with range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8], node 21 foreignDoctype 
 PASS setStartBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 0 paras[0] 
@@ -7606,35 +6798,19 @@ PASS setStartBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild,
 PASS setStartBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 4 foreignPara1.firstChild 
 PASS setStartBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 5 detachedPara1 
 PASS setStartBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 6 detachedPara1.firstChild 
-FAIL setStartBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 7 document assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStartBefore(node);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStartBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 8 detachedDiv assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStartBefore(node);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStartBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 9 foreignDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStartBefore(node);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStartBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 7 document 
+PASS setStartBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 8 detachedDiv 
+PASS setStartBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 9 foreignDoc 
 PASS setStartBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 10 foreignPara2 
-FAIL setStartBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 11 xmlDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStartBefore(node);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStartBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 11 xmlDoc 
 PASS setStartBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 12 xmlElement 
-FAIL setStartBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 13 detachedTextNode assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStartBefore(node);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStartBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 13 detachedTextNode 
 PASS setStartBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 14 foreignTextNode 
 PASS setStartBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 15 processingInstruction 
-FAIL setStartBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 16 detachedProcessingInstruction assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStartBefore(node);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStartBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 16 detachedProcessingInstruction 
 PASS setStartBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 17 comment 
-FAIL setStartBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 18 detachedComment assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStartBefore(node);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStartBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 19 docfrag assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStartBefore(node);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStartBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 18 detachedComment 
+PASS setStartBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 19 docfrag 
 PASS setStartBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 20 doctype 
 PASS setStartBefore() with range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9], node 21 foreignDoctype 
 PASS setStartBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 0 paras[0] 
@@ -7644,35 +6820,19 @@ PASS setStartBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild,
 PASS setStartBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 4 foreignPara1.firstChild 
 PASS setStartBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 5 detachedPara1 
 PASS setStartBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 6 detachedPara1.firstChild 
-FAIL setStartBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 7 document assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStartBefore(node);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStartBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 8 detachedDiv assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStartBefore(node);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStartBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 9 foreignDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStartBefore(node);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStartBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 7 document 
+PASS setStartBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 8 detachedDiv 
+PASS setStartBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 9 foreignDoc 
 PASS setStartBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 10 foreignPara2 
-FAIL setStartBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 11 xmlDoc assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStartBefore(node);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStartBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 11 xmlDoc 
 PASS setStartBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 12 xmlElement 
-FAIL setStartBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 13 detachedTextNode assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStartBefore(node);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStartBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 13 detachedTextNode 
 PASS setStartBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 14 foreignTextNode 
 PASS setStartBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 15 processingInstruction 
-FAIL setStartBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 16 detachedProcessingInstruction assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStartBefore(node);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStartBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 16 detachedProcessingInstruction 
 PASS setStartBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 17 comment 
-FAIL setStartBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 18 detachedComment assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStartBefore(node);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStartBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 19 docfrag assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStartBefore(node);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
+PASS setStartBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 18 detachedComment 
+PASS setStartBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 19 docfrag 
 PASS setStartBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 20 doctype 
 PASS setStartBefore() with range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0], node 21 foreignDoctype 
 PASS setStartBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 0 paras[0] 
@@ -7682,35 +6842,19 @@ PASS setStartBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild,
 PASS setStartBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 4 foreignPara1.firstChild 
 PASS setStartBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 5 detachedPara1 
 PASS setStartBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 6 detachedPara1.firstChild 
-FAIL setStartBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 7 document assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStartBefore(node);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception 2" that is not a DOMException INVALID_NODE_TYPE_ERR: property "code" is equal to 2, expected 24
-FAIL setStartBefore() with range 5 [paras[1].firstChild, 2, paras[1].firstChild, 9], node 8 detachedDiv assert_throws: setStartBefore() to a node with null parent must throw INVALID_NODE_TYPE_ERR function "function () {
-      range.setStartBefore(node);
-    }" threw object "Error: INVALID_NODE_TYPE_ERR: DOM Range Exception