Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(246)

Side by Side Diff: third_party/WebKit/LayoutTests/external/wpt/selection/addRange-28-expected.txt

Issue 2719813004: selection: Update addRange-nn.html for 20170227 draft. (Closed)
Patch Set: Created 3 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 CONSOLE WARNING: line 24: The behavior that Selection.addRange() merges existing Range and the specified Range was removed. See https://www.chromestatus.com/fea tures/6680566019653632 for more details.
2 CONSOLE ERROR: line 8: The given range isn't in document.
3 CONSOLE ERROR: line 8: The given range isn't in document.
4 CONSOLE ERROR: line 8: The given range isn't in document.
5 CONSOLE ERROR: line 8: The given range isn't in document.
6 CONSOLE ERROR: line 8: The given range isn't in document.
7 CONSOLE ERROR: line 8: The given range isn't in document.
8 CONSOLE ERROR: line 8: The given range isn't in document.
9 CONSOLE ERROR: line 8: The given range isn't in document.
10 CONSOLE ERROR: line 8: The given range isn't in document.
11 CONSOLE ERROR: line 8: The given range isn't in document.
12 CONSOLE ERROR: line 8: The given range isn't in document.
13 CONSOLE ERROR: line 8: The given range isn't in document.
14 CONSOLE ERROR: line 8: The given range isn't in document.
15 CONSOLE ERROR: line 8: The given range isn't in document.
16 CONSOLE ERROR: line 8: The given range isn't in document.
17 CONSOLE ERROR: line 8: The given range isn't in document.
18 CONSOLE ERROR: line 8: The given range isn't in document.
19 CONSOLE ERROR: line 8: The given range isn't in document.
20 CONSOLE ERROR: line 8: The given range isn't in document.
21 CONSOLE ERROR: line 8: The given range isn't in document.
22 CONSOLE ERROR: line 8: The given range isn't in document.
23 CONSOLE ERROR: line 8: The given range isn't in document.
24 CONSOLE ERROR: line 8: The given range isn't in document.
25 CONSOLE ERROR: line 8: The given range isn't in document.
26 CONSOLE ERROR: line 8: The given range isn't in document.
27 CONSOLE ERROR: line 8: The given range isn't in document.
28 CONSOLE ERROR: line 8: The given range isn't in document.
29 CONSOLE ERROR: line 8: The given range isn't in document.
30 CONSOLE ERROR: line 8: The given range isn't in document.
31 CONSOLE ERROR: line 8: The given range isn't in document.
32 CONSOLE ERROR: line 8: The given range isn't in document.
33 CONSOLE ERROR: line 8: The given range isn't in document.
34 CONSOLE ERROR: line 8: The given range isn't in document.
35 CONSOLE ERROR: line 8: The given range isn't in document.
36 CONSOLE ERROR: line 8: The given range isn't in document.
37 CONSOLE ERROR: line 8: The given range isn't in document.
38 This is a testharness.js-based test.
39 Found 2184 tests; 1736 PASS, 448 FAIL, 0 TIMEOUT, 0 NOTRUN.
40 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 0 [paras[0 ].firstChild, 0, paras[0].firstChild, 0]: first addRange() must not throw except ions or modify the range it's given
41 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 0 [paras[0 ].firstChild, 0, paras[0].firstChild, 0]: first addRange() must result in rangeC ount being 1
42 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 0 [paras[0 ].firstChild, 0, paras[0].firstChild, 0]: first addRange() must result in the se lection's last range having the specified endpoints
43 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 0 [paras[0 ].firstChild, 0, paras[0].firstChild, 0]: first addRange() must result in the se lection's last range being the same object we added
44 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 0 [paras[0 ].firstChild, 0, paras[0].firstChild, 0]: modifying the first added range must m odify the Selection's last Range
45 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 0 [paras[0 ].firstChild, 0, paras[0].firstChild, 0]: modifying the Selection's last Range m ust modify the first added Range
46 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 0 [paras[0 ].firstChild, 0, paras[0].firstChild, 0]: second addRange() must not throw excep tions or modify the range it's given
47 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 0 [paras[0 ].firstChild, 0, paras[0].firstChild, 0]: second addRange() must result in range Count being 1
48 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 0 [paras[0 ].firstChild, 0, paras[0].firstChild, 0]: second addRange() must result in the s election's last range having the specified endpoints assert_equals: startOffset of the Selection's last Range must match the added Range expected 0 but got 6
49 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 0 [paras[0 ].firstChild, 0, paras[0].firstChild, 0]: second addRange() must result in the s election's last range being the same object we added assert_equals: getRangeAt(r angeCount - 1) must return the same object we added expected object "" but got o bject ""
50 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 0 [paras[0 ].firstChild, 0, paras[0].firstChild, 0]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range exp ected 0 but got 6
51 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 0 [paras[0 ].firstChild, 0, paras[0].firstChild, 0]: modifying the Selection's last Range m ust modify the second added Range assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range m ust match the added Range expected 0 but got 6
52 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 1 [paras[0 ].firstChild, 0, paras[0].firstChild, 1]: first addRange() must not throw except ions or modify the range it's given
53 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 1 [paras[0 ].firstChild, 0, paras[0].firstChild, 1]: first addRange() must result in rangeC ount being 1
54 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 1 [paras[0 ].firstChild, 0, paras[0].firstChild, 1]: first addRange() must result in the se lection's last range having the specified endpoints
55 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 1 [paras[0 ].firstChild, 0, paras[0].firstChild, 1]: first addRange() must result in the se lection's last range being the same object we added
56 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 1 [paras[0 ].firstChild, 0, paras[0].firstChild, 1]: modifying the first added range must m odify the Selection's last Range
57 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 1 [paras[0 ].firstChild, 0, paras[0].firstChild, 1]: modifying the Selection's last Range m ust modify the first added Range
58 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 1 [paras[0 ].firstChild, 0, paras[0].firstChild, 1]: second addRange() must not throw excep tions or modify the range it's given
59 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 1 [paras[0 ].firstChild, 0, paras[0].firstChild, 1]: second addRange() must result in range Count being 1
60 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 1 [paras[0 ].firstChild, 0, paras[0].firstChild, 1]: second addRange() must result in the s election's last range having the specified endpoints assert_equals: startOffset of the Selection's last Range must match the added Range expected 0 but got 6
61 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 1 [paras[0 ].firstChild, 0, paras[0].firstChild, 1]: second addRange() must result in the s election's last range being the same object we added assert_equals: getRangeAt(r angeCount - 1) must return the same object we added expected object "A" but got object ""
62 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 1 [paras[0 ].firstChild, 0, paras[0].firstChild, 1]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range exp ected 0 but got 6
63 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 1 [paras[0 ].firstChild, 0, paras[0].firstChild, 1]: modifying the Selection's last Range m ust modify the second added Range assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range m ust match the added Range expected 0 but got 6
64 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 2 [paras[0 ].firstChild, 2, paras[0].firstChild, 8]: first addRange() must not throw except ions or modify the range it's given
65 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 2 [paras[0 ].firstChild, 2, paras[0].firstChild, 8]: first addRange() must result in rangeC ount being 1
66 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 2 [paras[0 ].firstChild, 2, paras[0].firstChild, 8]: first addRange() must result in the se lection's last range having the specified endpoints
67 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 2 [paras[0 ].firstChild, 2, paras[0].firstChild, 8]: first addRange() must result in the se lection's last range being the same object we added
68 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 2 [paras[0 ].firstChild, 2, paras[0].firstChild, 8]: modifying the first added range must m odify the Selection's last Range
69 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 2 [paras[0 ].firstChild, 2, paras[0].firstChild, 8]: modifying the Selection's last Range m ust modify the first added Range
70 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 2 [paras[0 ].firstChild, 2, paras[0].firstChild, 8]: second addRange() must not throw excep tions or modify the range it's given
71 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 2 [paras[0 ].firstChild, 2, paras[0].firstChild, 8]: second addRange() must result in range Count being 1
72 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 2 [paras[0 ].firstChild, 2, paras[0].firstChild, 8]: second addRange() must result in the s election's last range having the specified endpoints assert_equals: startOffset of the Selection's last Range must match the added Range expected 2 but got 6
73 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 2 [paras[0 ].firstChild, 2, paras[0].firstChild, 8]: second addRange() must result in the s election's last range being the same object we added assert_equals: getRangeAt(r angeCount - 1) must return the same object we added expected object "b̈c̈d̈" but got object ""
74 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 2 [paras[0 ].firstChild, 2, paras[0].firstChild, 8]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range exp ected 0 but got 6
75 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 2 [paras[0 ].firstChild, 2, paras[0].firstChild, 8]: modifying the Selection's last Range m ust modify the second added Range assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range m ust match the added Range expected 0 but got 6
76 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 3 [paras[0 ].firstChild, 2, paras[0].firstChild, 9]: first addRange() must not throw except ions or modify the range it's given
77 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 3 [paras[0 ].firstChild, 2, paras[0].firstChild, 9]: first addRange() must result in rangeC ount being 1
78 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 3 [paras[0 ].firstChild, 2, paras[0].firstChild, 9]: first addRange() must result in the se lection's last range having the specified endpoints
79 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 3 [paras[0 ].firstChild, 2, paras[0].firstChild, 9]: first addRange() must result in the se lection's last range being the same object we added
80 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 3 [paras[0 ].firstChild, 2, paras[0].firstChild, 9]: modifying the first added range must m odify the Selection's last Range
81 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 3 [paras[0 ].firstChild, 2, paras[0].firstChild, 9]: modifying the Selection's last Range m ust modify the first added Range
82 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 3 [paras[0 ].firstChild, 2, paras[0].firstChild, 9]: second addRange() must not throw excep tions or modify the range it's given
83 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 3 [paras[0 ].firstChild, 2, paras[0].firstChild, 9]: second addRange() must result in range Count being 1
84 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 3 [paras[0 ].firstChild, 2, paras[0].firstChild, 9]: second addRange() must result in the s election's last range having the specified endpoints assert_equals: startOffset of the Selection's last Range must match the added Range expected 2 but got 6
85 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 3 [paras[0 ].firstChild, 2, paras[0].firstChild, 9]: second addRange() must result in the s election's last range being the same object we added assert_equals: getRangeAt(r angeCount - 1) must return the same object we added expected object "b̈c̈d̈e" bu t got object ""
86 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 3 [paras[0 ].firstChild, 2, paras[0].firstChild, 9]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range exp ected 0 but got 6
87 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 3 [paras[0 ].firstChild, 2, paras[0].firstChild, 9]: modifying the Selection's last Range m ust modify the second added Range assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range m ust match the added Range expected 0 but got 6
88 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 4 [paras[1 ].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw except ions or modify the range it's given
89 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 4 [paras[1 ].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeC ount being 1
90 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 4 [paras[1 ].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the se lection's last range having the specified endpoints
91 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 4 [paras[1 ].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the se lection's last range being the same object we added
92 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 4 [paras[1 ].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must m odify the Selection's last Range
93 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 4 [paras[1 ].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range m ust modify the first added Range
94 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 4 [paras[1 ].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw excep tions or modify the range it's given
95 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 4 [paras[1 ].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in range Count being 1
96 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 4 [paras[1 ].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the s election's last range having the specified endpoints assert_equals: startContain er of the Selection's last Range must match the added Range expected Text node " Ijklmnop
97 " but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
98 "
99 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 4 [paras[1 ].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the s election's last range being the same object we added assert_equals: getRangeAt(r angeCount - 1) must return the same object we added expected object "" but got o bject ""
100 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 4 [paras[1 ].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range exp ected 0 but got 6
101 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 4 [paras[1 ].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range m ust modify the second added Range assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range m ust match the added Range expected 0 but got 6
102 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 5 [paras[1 ].firstChild, 0, paras[1].firstChild, 1]: first addRange() must not throw except ions or modify the range it's given
103 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 5 [paras[1 ].firstChild, 0, paras[1].firstChild, 1]: first addRange() must result in rangeC ount being 1
104 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 5 [paras[1 ].firstChild, 0, paras[1].firstChild, 1]: first addRange() must result in the se lection's last range having the specified endpoints
105 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 5 [paras[1 ].firstChild, 0, paras[1].firstChild, 1]: first addRange() must result in the se lection's last range being the same object we added
106 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 5 [paras[1 ].firstChild, 0, paras[1].firstChild, 1]: modifying the first added range must m odify the Selection's last Range
107 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 5 [paras[1 ].firstChild, 0, paras[1].firstChild, 1]: modifying the Selection's last Range m ust modify the first added Range
108 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 5 [paras[1 ].firstChild, 0, paras[1].firstChild, 1]: second addRange() must not throw excep tions or modify the range it's given
109 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 5 [paras[1 ].firstChild, 0, paras[1].firstChild, 1]: second addRange() must result in range Count being 1
110 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 5 [paras[1 ].firstChild, 0, paras[1].firstChild, 1]: second addRange() must result in the s election's last range having the specified endpoints assert_equals: startContain er of the Selection's last Range must match the added Range expected Text node " Ijklmnop
111 " but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
112 "
113 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 5 [paras[1 ].firstChild, 0, paras[1].firstChild, 1]: second addRange() must result in the s election's last range being the same object we added assert_equals: getRangeAt(r angeCount - 1) must return the same object we added expected object "I" but got object ""
114 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 5 [paras[1 ].firstChild, 0, paras[1].firstChild, 1]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range exp ected 0 but got 6
115 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 5 [paras[1 ].firstChild, 0, paras[1].firstChild, 1]: modifying the Selection's last Range m ust modify the second added Range assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range m ust match the added Range expected 0 but got 6
116 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 6 [paras[1 ].firstChild, 2, paras[1].firstChild, 8]: first addRange() must not throw except ions or modify the range it's given
117 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 6 [paras[1 ].firstChild, 2, paras[1].firstChild, 8]: first addRange() must result in rangeC ount being 1
118 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 6 [paras[1 ].firstChild, 2, paras[1].firstChild, 8]: first addRange() must result in the se lection's last range having the specified endpoints
119 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 6 [paras[1 ].firstChild, 2, paras[1].firstChild, 8]: first addRange() must result in the se lection's last range being the same object we added
120 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 6 [paras[1 ].firstChild, 2, paras[1].firstChild, 8]: modifying the first added range must m odify the Selection's last Range
121 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 6 [paras[1 ].firstChild, 2, paras[1].firstChild, 8]: modifying the Selection's last Range m ust modify the first added Range
122 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 6 [paras[1 ].firstChild, 2, paras[1].firstChild, 8]: second addRange() must not throw excep tions or modify the range it's given
123 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 6 [paras[1 ].firstChild, 2, paras[1].firstChild, 8]: second addRange() must result in range Count being 1
124 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 6 [paras[1 ].firstChild, 2, paras[1].firstChild, 8]: second addRange() must result in the s election's last range having the specified endpoints assert_equals: startContain er of the Selection's last Range must match the added Range expected Text node " Ijklmnop
125 " but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
126 "
127 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 6 [paras[1 ].firstChild, 2, paras[1].firstChild, 8]: second addRange() must result in the s election's last range being the same object we added assert_equals: getRangeAt(r angeCount - 1) must return the same object we added expected object "klmnop" but got object ""
128 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 6 [paras[1 ].firstChild, 2, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range exp ected 0 but got 6
129 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 6 [paras[1 ].firstChild, 2, paras[1].firstChild, 8]: modifying the Selection's last Range m ust modify the second added Range assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range m ust match the added Range expected 0 but got 6
130 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 7 [paras[1 ].firstChild, 2, paras[1].firstChild, 9]: first addRange() must not throw except ions or modify the range it's given
131 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 7 [paras[1 ].firstChild, 2, paras[1].firstChild, 9]: first addRange() must result in rangeC ount being 1
132 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 7 [paras[1 ].firstChild, 2, paras[1].firstChild, 9]: first addRange() must result in the se lection's last range having the specified endpoints
133 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 7 [paras[1 ].firstChild, 2, paras[1].firstChild, 9]: first addRange() must result in the se lection's last range being the same object we added
134 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 7 [paras[1 ].firstChild, 2, paras[1].firstChild, 9]: modifying the first added range must m odify the Selection's last Range
135 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 7 [paras[1 ].firstChild, 2, paras[1].firstChild, 9]: modifying the Selection's last Range m ust modify the first added Range
136 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 7 [paras[1 ].firstChild, 2, paras[1].firstChild, 9]: second addRange() must not throw excep tions or modify the range it's given
137 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 7 [paras[1 ].firstChild, 2, paras[1].firstChild, 9]: second addRange() must result in range Count being 1
138 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 7 [paras[1 ].firstChild, 2, paras[1].firstChild, 9]: second addRange() must result in the s election's last range having the specified endpoints assert_equals: startContain er of the Selection's last Range must match the added Range expected Text node " Ijklmnop
139 " but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
140 "
141 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 7 [paras[1 ].firstChild, 2, paras[1].firstChild, 9]: second addRange() must result in the s election's last range being the same object we added assert_equals: getRangeAt(r angeCount - 1) must return the same object we added expected object "klmnop
142 " but got object ""
143 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 7 [paras[1 ].firstChild, 2, paras[1].firstChild, 9]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range exp ected 0 but got 6
144 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 7 [paras[1 ].firstChild, 2, paras[1].firstChild, 9]: modifying the Selection's last Range m ust modify the second added Range assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range m ust match the added Range expected 0 but got 6
145 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 8 [detache dPara1.firstChild, 0, detachedPara1.firstChild, 0]: first addRange() must not th row exceptions or modify the range it's given
146 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 8 [detache dPara1.firstChild, 0, detachedPara1.firstChild, 0]: first addRange() must result in rangeCount being 1
147 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 8 [detache dPara1.firstChild, 0, detachedPara1.firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints
148 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 8 [detache dPara1.firstChild, 0, detachedPara1.firstChild, 0]: first addRange() must result in the selection's last range being the same object we added
149 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 8 [detache dPara1.firstChild, 0, detachedPara1.firstChild, 0]: modifying the first added ra nge must modify the Selection's last Range
150 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 8 [detache dPara1.firstChild, 0, detachedPara1.firstChild, 0]: modifying the Selection's la st Range must modify the first added Range
151 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 8 [detache dPara1.firstChild, 0, detachedPara1.firstChild, 0]: second addRange() must do no thing
152 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 9 [detache dPara1.firstChild, 0, detachedPara1.firstChild, 1]: first addRange() must not th row exceptions or modify the range it's given
153 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 9 [detache dPara1.firstChild, 0, detachedPara1.firstChild, 1]: first addRange() must result in rangeCount being 1
154 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 9 [detache dPara1.firstChild, 0, detachedPara1.firstChild, 1]: first addRange() must result in the selection's last range having the specified endpoints
155 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 9 [detache dPara1.firstChild, 0, detachedPara1.firstChild, 1]: first addRange() must result in the selection's last range being the same object we added
156 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 9 [detache dPara1.firstChild, 0, detachedPara1.firstChild, 1]: modifying the first added ra nge must modify the Selection's last Range
157 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 9 [detache dPara1.firstChild, 0, detachedPara1.firstChild, 1]: modifying the Selection's la st Range must modify the first added Range
158 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 9 [detache dPara1.firstChild, 0, detachedPara1.firstChild, 1]: second addRange() must do no thing
159 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 10 [detach edPara1.firstChild, 2, detachedPara1.firstChild, 8]: first addRange() must not t hrow exceptions or modify the range it's given
160 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 10 [detach edPara1.firstChild, 2, detachedPara1.firstChild, 8]: first addRange() must resul t in rangeCount being 1
161 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 10 [detach edPara1.firstChild, 2, detachedPara1.firstChild, 8]: first addRange() must resul t in the selection's last range having the specified endpoints
162 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 10 [detach edPara1.firstChild, 2, detachedPara1.firstChild, 8]: first addRange() must resul t in the selection's last range being the same object we added
163 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 10 [detach edPara1.firstChild, 2, detachedPara1.firstChild, 8]: modifying the first added r ange must modify the Selection's last Range
164 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 10 [detach edPara1.firstChild, 2, detachedPara1.firstChild, 8]: modifying the Selection's l ast Range must modify the first added Range
165 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 10 [detach edPara1.firstChild, 2, detachedPara1.firstChild, 8]: second addRange() must do n othing
166 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 11 [foreig nPara1.firstChild, 0, foreignPara1.firstChild, 0]: first addRange() must not thr ow exceptions or modify the range it's given
167 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 11 [foreig nPara1.firstChild, 0, foreignPara1.firstChild, 0]: first addRange() must result in rangeCount being 1
168 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 11 [foreig nPara1.firstChild, 0, foreignPara1.firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints
169 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 11 [foreig nPara1.firstChild, 0, foreignPara1.firstChild, 0]: first addRange() must result in the selection's last range being the same object we added
170 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 11 [foreig nPara1.firstChild, 0, foreignPara1.firstChild, 0]: modifying the first added ran ge must modify the Selection's last Range
171 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 11 [foreig nPara1.firstChild, 0, foreignPara1.firstChild, 0]: modifying the Selection's las t Range must modify the first added Range
172 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 11 [foreig nPara1.firstChild, 0, foreignPara1.firstChild, 0]: second addRange() must do not hing
173 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 12 [foreig nPara1.firstChild, 0, foreignPara1.firstChild, 1]: first addRange() must not thr ow exceptions or modify the range it's given
174 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 12 [foreig nPara1.firstChild, 0, foreignPara1.firstChild, 1]: first addRange() must result in rangeCount being 1
175 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 12 [foreig nPara1.firstChild, 0, foreignPara1.firstChild, 1]: first addRange() must result in the selection's last range having the specified endpoints
176 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 12 [foreig nPara1.firstChild, 0, foreignPara1.firstChild, 1]: first addRange() must result in the selection's last range being the same object we added
177 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 12 [foreig nPara1.firstChild, 0, foreignPara1.firstChild, 1]: modifying the first added ran ge must modify the Selection's last Range
178 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 12 [foreig nPara1.firstChild, 0, foreignPara1.firstChild, 1]: modifying the Selection's las t Range must modify the first added Range
179 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 12 [foreig nPara1.firstChild, 0, foreignPara1.firstChild, 1]: second addRange() must do not hing
180 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 13 [foreig nPara1.firstChild, 2, foreignPara1.firstChild, 8]: first addRange() must not thr ow exceptions or modify the range it's given
181 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 13 [foreig nPara1.firstChild, 2, foreignPara1.firstChild, 8]: first addRange() must result in rangeCount being 1
182 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 13 [foreig nPara1.firstChild, 2, foreignPara1.firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints
183 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 13 [foreig nPara1.firstChild, 2, foreignPara1.firstChild, 8]: first addRange() must result in the selection's last range being the same object we added
184 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 13 [foreig nPara1.firstChild, 2, foreignPara1.firstChild, 8]: modifying the first added ran ge must modify the Selection's last Range
185 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 13 [foreig nPara1.firstChild, 2, foreignPara1.firstChild, 8]: modifying the Selection's las t Range must modify the first added Range
186 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 13 [foreig nPara1.firstChild, 2, foreignPara1.firstChild, 8]: second addRange() must do not hing
187 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 14 [docume nt.documentElement, 0, document.documentElement, 1]: first addRange() must not t hrow exceptions or modify the range it's given
188 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 14 [docume nt.documentElement, 0, document.documentElement, 1]: first addRange() must resul t in rangeCount being 1
189 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 14 [docume nt.documentElement, 0, document.documentElement, 1]: first addRange() must resul t in the selection's last range having the specified endpoints
190 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 14 [docume nt.documentElement, 0, document.documentElement, 1]: first addRange() must resul t in the selection's last range being the same object we added
191 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 14 [docume nt.documentElement, 0, document.documentElement, 1]: modifying the first added r ange must modify the Selection's last Range
192 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 14 [docume nt.documentElement, 0, document.documentElement, 1]: modifying the Selection's l ast Range must modify the first added Range
193 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 14 [docume nt.documentElement, 0, document.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given
194 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 14 [docume nt.documentElement, 0, document.documentElement, 1]: second addRange() must resu lt in rangeCount being 1
195 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 14 [docume nt.documentElement, 0, document.documentElement, 1]: second addRange() must resu lt in the selection's last range having the specified endpoints assert_equals: s tartContainer of the Selection's last Range must match the added Range expected Element node <html><head><title>Selection.addRange() tests</title>
196 <me... but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
197 "
198 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 14 [docume nt.documentElement, 0, document.documentElement, 1]: second addRange() must resu lt in the selection's last range being the same object we added assert_equals: g etRangeAt(rangeCount - 1) must return the same object we added expected object " Selection.addRange() tests
199
200 " but got object ""
201 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 14 [docume nt.documentElement, 0, document.documentElement, 1]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the s econd added Range, startOffset of the Selection's last Range must match the adde d Range expected 0 but got 6
202 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 14 [docume nt.documentElement, 0, document.documentElement, 1]: modifying the Selection's l ast Range must modify the second added Range assert_equals: After second addRang e(), after mutating the Selection's last Range, startOffset of the Selection's l ast Range must match the added Range expected 0 but got 6
203 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 15 [docume nt.documentElement, 0, document.documentElement, 2]: first addRange() must not t hrow exceptions or modify the range it's given
204 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 15 [docume nt.documentElement, 0, document.documentElement, 2]: first addRange() must resul t in rangeCount being 1
205 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 15 [docume nt.documentElement, 0, document.documentElement, 2]: first addRange() must resul t in the selection's last range having the specified endpoints
206 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 15 [docume nt.documentElement, 0, document.documentElement, 2]: first addRange() must resul t in the selection's last range being the same object we added
207 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 15 [docume nt.documentElement, 0, document.documentElement, 2]: modifying the first added r ange must modify the Selection's last Range
208 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 15 [docume nt.documentElement, 0, document.documentElement, 2]: modifying the Selection's l ast Range must modify the first added Range
209 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 15 [docume nt.documentElement, 0, document.documentElement, 2]: second addRange() must not throw exceptions or modify the range it's given
210 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 15 [docume nt.documentElement, 0, document.documentElement, 2]: second addRange() must resu lt in rangeCount being 1
211 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 15 [docume nt.documentElement, 0, document.documentElement, 2]: second addRange() must resu lt in the selection's last range having the specified endpoints assert_equals: s tartContainer of the Selection's last Range must match the added Range expected Element node <html><head><title>Selection.addRange() tests</title>
212 <me... but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
213 "
214 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 15 [docume nt.documentElement, 0, document.documentElement, 2]: second addRange() must resu lt in the selection's last range being the same object we added assert_equals: g etRangeAt(rangeCount - 1) must return the same object we added expected object " Selection.addRange() tests
215
216 Äb̈c̈d̈ëf̈g̈ḧ
217 Ijklmnop
218 QrstuvwxYzabcdefGhijklmn
219
220
221
222
223
224 "use strict";
225
226 testAddRangeSubSet(28, 32);
227 testDiv.style.display = "none";
228 " but got object ""
229 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 15 [docume nt.documentElement, 0, document.documentElement, 2]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the s econd added Range, startOffset of the Selection's last Range must match the adde d Range expected 0 but got 6
230 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 15 [docume nt.documentElement, 0, document.documentElement, 2]: modifying the Selection's l ast Range must modify the second added Range assert_equals: After second addRang e(), after mutating the Selection's last Range, startOffset of the Selection's l ast Range must match the added Range expected 0 but got 6
231 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 16 [docume nt.documentElement, 1, document.documentElement, 2]: first addRange() must not t hrow exceptions or modify the range it's given
232 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 16 [docume nt.documentElement, 1, document.documentElement, 2]: first addRange() must resul t in rangeCount being 1
233 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 16 [docume nt.documentElement, 1, document.documentElement, 2]: first addRange() must resul t in the selection's last range having the specified endpoints
234 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 16 [docume nt.documentElement, 1, document.documentElement, 2]: first addRange() must resul t in the selection's last range being the same object we added
235 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 16 [docume nt.documentElement, 1, document.documentElement, 2]: modifying the first added r ange must modify the Selection's last Range
236 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 16 [docume nt.documentElement, 1, document.documentElement, 2]: modifying the Selection's l ast Range must modify the first added Range
237 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 16 [docume nt.documentElement, 1, document.documentElement, 2]: second addRange() must not throw exceptions or modify the range it's given
238 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 16 [docume nt.documentElement, 1, document.documentElement, 2]: second addRange() must resu lt in rangeCount being 1
239 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 16 [docume nt.documentElement, 1, document.documentElement, 2]: second addRange() must resu lt in the selection's last range having the specified endpoints assert_equals: s tartContainer of the Selection's last Range must match the added Range expected Element node <html><head><title>Selection.addRange() tests</title>
240 <me... but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
241 "
242 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 16 [docume nt.documentElement, 1, document.documentElement, 2]: second addRange() must resu lt in the selection's last range being the same object we added assert_equals: g etRangeAt(rangeCount - 1) must return the same object we added expected object " Äb̈c̈d̈ëf̈g̈ḧ
243 Ijklmnop
244 QrstuvwxYzabcdefGhijklmn
245
246
247
248
249
250 "use strict";
251
252 testAddRangeSubSet(28, 32);
253 testDiv.style.display = "none";
254 " but got object ""
255 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 16 [docume nt.documentElement, 1, document.documentElement, 2]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the s econd added Range, startOffset of the Selection's last Range must match the adde d Range expected 0 but got 6
256 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 16 [docume nt.documentElement, 1, document.documentElement, 2]: modifying the Selection's l ast Range must modify the second added Range assert_equals: After second addRang e(), after mutating the Selection's last Range, startOffset of the Selection's l ast Range must match the added Range expected 0 but got 6
257 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 17 [docume nt.head, 1, document.head, 1]: first addRange() must not throw exceptions or mod ify the range it's given
258 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 17 [docume nt.head, 1, document.head, 1]: first addRange() must result in rangeCount being 1
259 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 17 [docume nt.head, 1, document.head, 1]: first addRange() must result in the selection's l ast range having the specified endpoints
260 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 17 [docume nt.head, 1, document.head, 1]: first addRange() must result in the selection's l ast range being the same object we added
261 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 17 [docume nt.head, 1, document.head, 1]: modifying the first added range must modify the S election's last Range
262 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 17 [docume nt.head, 1, document.head, 1]: modifying the Selection's last Range must modify the first added Range
263 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 17 [docume nt.head, 1, document.head, 1]: second addRange() must not throw exceptions or mo dify the range it's given
264 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 17 [docume nt.head, 1, document.head, 1]: second addRange() must result in rangeCount being 1
265 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 17 [docume nt.head, 1, document.head, 1]: second addRange() must result in the selection's last range having the specified endpoints assert_equals: startContainer of the S election's last Range must match the added Range expected Element node <head><ti tle>Selection.addRange() tests</title>
266 <meta nam... but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
267 "
268 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 17 [docume nt.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object ""
269 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 17 [docume nt.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, sta rtOffset of the Selection's last Range must match the added Range expected 0 but got 6
270 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 17 [docume nt.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range assert_equals: After second addRange(), after mutating th e Selection's last Range, startOffset of the Selection's last Range must match t he added Range expected 0 but got 6
271 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 18 [docume nt.body, 0, document.body, 1]: first addRange() must not throw exceptions or mod ify the range it's given
272 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 18 [docume nt.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1
273 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 18 [docume nt.body, 0, document.body, 1]: first addRange() must result in the selection's l ast range having the specified endpoints
274 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 18 [docume nt.body, 0, document.body, 1]: first addRange() must result in the selection's l ast range being the same object we added
275 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 18 [docume nt.body, 0, document.body, 1]: modifying the first added range must modify the S election's last Range
276 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 18 [docume nt.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range
277 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 18 [docume nt.body, 0, document.body, 1]: second addRange() must not throw exceptions or mo dify the range it's given
278 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 18 [docume nt.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1
279 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 18 [docume nt.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints assert_equals: startContainer of the S election's last Range must match the added Range expected Element node <body><di v id="test"><p id="a">Äb̈c̈d̈ëf̈g̈ḧ
280 </p><p id... but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
281 "
282 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 18 [docume nt.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "Äb̈c̈d̈ëf̈g̈ḧ
283 Ijklmnop
284 QrstuvwxYzabcdefGhijklmn" but got object ""
285 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 18 [docume nt.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, sta rtOffset of the Selection's last Range must match the added Range expected 0 but got 6
286 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 18 [docume nt.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range assert_equals: After second addRange(), after mutating th e Selection's last Range, startOffset of the Selection's last Range must match t he added Range expected 0 but got 6
287 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 19 [foreig nDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must n ot throw exceptions or modify the range it's given
288 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 19 [foreig nDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must r esult in rangeCount being 1
289 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 19 [foreig nDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must r esult in the selection's last range having the specified endpoints
290 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 19 [foreig nDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must r esult in the selection's last range being the same object we added
291 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 19 [foreig nDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first add ed range must modify the Selection's last Range
292 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 19 [foreig nDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection 's last Range must modify the first added Range
293 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 19 [foreig nDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must do nothing
294 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 20 [foreig nDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given
295 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 20 [foreig nDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount be ing 1
296 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 20 [foreig nDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection 's last range having the specified endpoints
297 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 20 [foreig nDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection 's last range being the same object we added
298 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 20 [foreig nDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify t he Selection's last Range
299 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 20 [foreig nDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must mod ify the first added Range
300 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 20 [foreig nDoc.head, 1, foreignDoc.head, 1]: second addRange() must do nothing
301 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 21 [foreig nDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given
302 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 21 [foreig nDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount be ing 1
303 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 21 [foreig nDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection 's last range having the specified endpoints
304 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 21 [foreig nDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection 's last range being the same object we added
305 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 21 [foreig nDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify t he Selection's last Range
306 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 21 [foreig nDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must mod ify the first added Range
307 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 21 [foreig nDoc.body, 0, foreignDoc.body, 0]: second addRange() must do nothing
308 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 22 [paras[ 0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the ra nge it's given
309 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 22 [paras[ 0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1
310 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 22 [paras[ 0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints
311 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 22 [paras[ 0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added
312 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 22 [paras[ 0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range
313 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 22 [paras[ 0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range
314 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 22 [paras[ 0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the r ange it's given
315 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 22 [paras[ 0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1
316 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 22 [paras[ 0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node <p id="a">Äb̈c̈d̈e ̈f̈g̈ḧ
317 </p> but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
318 "
319 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 22 [paras[ 0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added assert_equals: getRangeAt(rangeCount - 1) must r eturn the same object we added expected object "" but got object ""
320 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 22 [paras[ 0], 0, paras[0], 0]: modifying the second added range must modify the Selection' s last Range assert_equals: After mutating the second added Range, startOffset o f the Selection's last Range must match the added Range expected 0 but got 6
321 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 22 [paras[ 0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range assert_equals: After second addRange(), after mutating the Selectio n's last Range, startOffset of the Selection's last Range must match the added R ange expected 0 but got 6
322 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 23 [paras[ 0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the ra nge it's given
323 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 23 [paras[ 0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1
324 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 23 [paras[ 0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints
325 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 23 [paras[ 0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added
326 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 23 [paras[ 0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range
327 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 23 [paras[ 0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range
328 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 23 [paras[ 0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the r ange it's given
329 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 23 [paras[ 0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1
330 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 23 [paras[ 0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node <p id="a">Äb̈c̈d̈e ̈f̈g̈ḧ
331 </p> but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
332 "
333 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 23 [paras[ 0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added assert_equals: getRangeAt(rangeCount - 1) must r eturn the same object we added expected object "Äb̈c̈d̈ëf̈g̈ḧ
334 " but got object ""
335 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 23 [paras[ 0], 0, paras[0], 1]: modifying the second added range must modify the Selection' s last Range assert_equals: After mutating the second added Range, startOffset o f the Selection's last Range must match the added Range expected 0 but got 6
336 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 23 [paras[ 0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range assert_equals: After second addRange(), after mutating the Selectio n's last Range, startOffset of the Selection's last Range must match the added R ange expected 0 but got 6
337 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 24 [detach edPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or mod ify the range it's given
338 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 24 [detach edPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1
339 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 24 [detach edPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's l ast range having the specified endpoints
340 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 24 [detach edPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's l ast range being the same object we added
341 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 24 [detach edPara1, 0, detachedPara1, 0]: modifying the first added range must modify the S election's last Range
342 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 24 [detach edPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range
343 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 24 [detach edPara1, 0, detachedPara1, 0]: second addRange() must do nothing
344 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 25 [detach edPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or mod ify the range it's given
345 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 25 [detach edPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1
346 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 25 [detach edPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's l ast range having the specified endpoints
347 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 25 [detach edPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's l ast range being the same object we added
348 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 25 [detach edPara1, 0, detachedPara1, 1]: modifying the first added range must modify the S election's last Range
349 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 25 [detach edPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range
350 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 25 [detach edPara1, 0, detachedPara1, 1]: second addRange() must do nothing
351 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 26 [paras[ 0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw excep tions or modify the range it's given
352 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 26 [paras[ 0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in range Count being 1
353 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 26 [paras[ 0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the s election's last range having the specified endpoints
354 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 26 [paras[ 0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the s election's last range being the same object we added
355 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 26 [paras[ 0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range
356 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 26 [paras[ 0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range
357 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 26 [paras[ 0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exce ptions or modify the range it's given
358 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 26 [paras[ 0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rang eCount being 1
359 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 26 [paras[ 0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints assert_equals: startOffset of the Selection's last Range must match the added Range expected 0 but got 6
360 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 26 [paras[ 0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added assert_equals: getRangeAt( rangeCount - 1) must return the same object we added expected object "Äb̈c̈d̈ë f̈g̈ḧ
361 " but got object ""
362 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 26 [paras[ 0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second adde d Range, startOffset of the Selection's last Range must match the added Range ex pected 0 but got 6
363 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 26 [paras[ 0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6
364 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 27 [paras[ 0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw excep tions or modify the range it's given
365 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 27 [paras[ 0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in range Count being 1
366 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 27 [paras[ 0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the s election's last range having the specified endpoints
367 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 27 [paras[ 0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the s election's last range being the same object we added
368 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 27 [paras[ 0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range
369 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 27 [paras[ 0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range
370 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 27 [paras[ 0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exce ptions or modify the range it's given
371 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 27 [paras[ 0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rang eCount being 1
372 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 27 [paras[ 0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints assert_equals: startOffset of the Selection's last Range must match the added Range expected 0 but got 6
373 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 27 [paras[ 0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added assert_equals: getRangeAt( rangeCount - 1) must return the same object we added expected object "Äb̈c̈d̈ë f̈g̈ḧ
374 Ijklmnop" but got object ""
375 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 27 [paras[ 0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second adde d Range, startOffset of the Selection's last Range must match the added Range ex pected 0 but got 6
376 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 27 [paras[ 0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6
377 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 28 [paras[ 0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or mo dify the range it's given
378 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 28 [paras[ 0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1
379 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 28 [paras[ 0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints
380 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 28 [paras[ 0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added
381 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 28 [paras[ 0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range
382 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 28 [paras[ 0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range
383 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 28 [paras[ 0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or m odify the range it's given
384 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 28 [paras[ 0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount bein g 1
385 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 28 [paras[ 0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints assert_equals: startOffset of the Sel ection's last Range must match the added Range expected 3 but got 6
386 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 28 [paras[ 0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "̈c̈d̈ëf̈g̈ḧ
387 Ijklmnop
388 QrstuvwxYzabcdef" but got object ""
389 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 28 [paras[ 0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, st artOffset of the Selection's last Range must match the added Range expected 0 bu t got 6
390 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 28 [paras[ 0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range assert_equals: After second addRange(), after mutating t he Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6
391 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 29 [paras[ 0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or mo dify the range it's given
392 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 29 [paras[ 0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1
393 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 29 [paras[ 0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints
394 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 29 [paras[ 0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added
395 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 29 [paras[ 0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range
396 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 29 [paras[ 0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range
397 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 29 [paras[ 0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or m odify the range it's given
398 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 29 [paras[ 0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount bein g 1
399 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 29 [paras[ 0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node <p id="a ">Äb̈c̈d̈ëf̈g̈ḧ
400 </p> but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
401 "
402 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 29 [paras[ 0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "Äb̈c̈d" but got obje ct ""
403 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 29 [paras[ 0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, st artOffset of the Selection's last Range must match the added Range expected 0 bu t got 6
404 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 29 [paras[ 0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range assert_equals: After second addRange(), after mutating t he Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6
405 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 30 [testDi v, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the ran ge it's given
406 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 30 [testDi v, 2, paras[4], 1]: first addRange() must result in rangeCount being 1
407 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 30 [testDi v, 2, paras[4], 1]: first addRange() must result in the selection's last range h aving the specified endpoints
408 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 30 [testDi v, 2, paras[4], 1]: first addRange() must result in the selection's last range b eing the same object we added
409 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 30 [testDi v, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range
410 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 30 [testDi v, 2, paras[4], 1]: modifying the Selection's last Range must modify the first a dded Range
411 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 30 [testDi v, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the ra nge it's given
412 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 30 [testDi v, 2, paras[4], 1]: second addRange() must result in rangeCount being 1
413 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 30 [testDi v, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node <div id="test"><p id ="a">Äb̈c̈d̈ëf̈g̈ḧ
414 </p><p id="b" s... but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
415 "
416 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 30 [testDi v, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added assert_equals: getRangeAt(rangeCount - 1) must re turn the same object we added expected object "QrstuvwxYzabcdefGhijklmn" but got object ""
417 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 30 [testDi v, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6
418 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 30 [testDi v, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range assert_equals: After second addRange(), after mutating the Selection 's last Range, startOffset of the Selection's last Range must match the added Ra nge expected 0 but got 6
419 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 31 [testDi v, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or mod ify the range it's given
420 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 31 [testDi v, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1
421 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 31 [testDi v, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's l ast range having the specified endpoints
422 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 31 [testDi v, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's l ast range being the same object we added
423 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 31 [testDi v, 1, paras[2].firstChild, 5]: modifying the first added range must modify the S election's last Range
424 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 31 [testDi v, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range
425 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 31 [testDi v, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or mo dify the range it's given
426 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 31 [testDi v, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1
427 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 31 [testDi v, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints assert_equals: startContainer of the S election's last Range must match the added Range expected Element node <div id=" test"><p id="a">Äb̈c̈d̈ëf̈g̈ḧ
428 </p><p id="b" s... but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
429 "
430 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 31 [testDi v, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "Ijklmnop
431 Qrstu" but got object ""
432 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 31 [testDi v, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, sta rtOffset of the Selection's last Range must match the added Range expected 0 but got 6
433 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 31 [testDi v, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range assert_equals: After second addRange(), after mutating th e Selection's last Range, startOffset of the Selection's last Range must match t he added Range expected 0 but got 6
434 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 32 [docume nt.documentElement, 1, document.body, 0]: first addRange() must not throw except ions or modify the range it's given
435 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 32 [docume nt.documentElement, 1, document.body, 0]: first addRange() must result in rangeC ount being 1
436 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 32 [docume nt.documentElement, 1, document.body, 0]: first addRange() must result in the se lection's last range having the specified endpoints
437 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 32 [docume nt.documentElement, 1, document.body, 0]: first addRange() must result in the se lection's last range being the same object we added
438 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 32 [docume nt.documentElement, 1, document.body, 0]: modifying the first added range must m odify the Selection's last Range
439 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 32 [docume nt.documentElement, 1, document.body, 0]: modifying the Selection's last Range m ust modify the first added Range
440 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 32 [docume nt.documentElement, 1, document.body, 0]: second addRange() must not throw excep tions or modify the range it's given
441 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 32 [docume nt.documentElement, 1, document.body, 0]: second addRange() must result in range Count being 1
442 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 32 [docume nt.documentElement, 1, document.body, 0]: second addRange() must result in the s election's last range having the specified endpoints assert_equals: startContain er of the Selection's last Range must match the added Range expected Element nod e <html><head><title>Selection.addRange() tests</title>
443 <me... but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
444 "
445 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 32 [docume nt.documentElement, 1, document.body, 0]: second addRange() must result in the s election's last range being the same object we added assert_equals: getRangeAt(r angeCount - 1) must return the same object we added expected object "" but got o bject ""
446 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 32 [docume nt.documentElement, 1, document.body, 0]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range exp ected 0 but got 6
447 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 32 [docume nt.documentElement, 1, document.body, 0]: modifying the Selection's last Range m ust modify the second added Range assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range m ust match the added Range expected 0 but got 6
448 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 33 [foreig nDoc.documentElement, 1, foreignDoc.body, 0]: first addRange() must not throw ex ceptions or modify the range it's given
449 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 33 [foreig nDoc.documentElement, 1, foreignDoc.body, 0]: first addRange() must result in ra ngeCount being 1
450 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 33 [foreig nDoc.documentElement, 1, foreignDoc.body, 0]: first addRange() must result in th e selection's last range having the specified endpoints
451 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 33 [foreig nDoc.documentElement, 1, foreignDoc.body, 0]: first addRange() must result in th e selection's last range being the same object we added
452 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 33 [foreig nDoc.documentElement, 1, foreignDoc.body, 0]: modifying the first added range mu st modify the Selection's last Range
453 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 33 [foreig nDoc.documentElement, 1, foreignDoc.body, 0]: modifying the Selection's last Ran ge must modify the first added Range
454 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 33 [foreig nDoc.documentElement, 1, foreignDoc.body, 0]: second addRange() must do nothing
455 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 34 [docume nt, 0, document, 1]: first addRange() must not throw exceptions or modify the ra nge it's given
456 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 34 [docume nt, 0, document, 1]: first addRange() must result in rangeCount being 1
457 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 34 [docume nt, 0, document, 1]: first addRange() must result in the selection's last range having the specified endpoints
458 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 34 [docume nt, 0, document, 1]: first addRange() must result in the selection's last range being the same object we added
459 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 34 [docume nt, 0, document, 1]: modifying the first added range must modify the Selection's last Range
460 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 34 [docume nt, 0, document, 1]: modifying the Selection's last Range must modify the first added Range
461 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 34 [docume nt, 0, document, 1]: second addRange() must not throw exceptions or modify the r ange it's given
462 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 34 [docume nt, 0, document, 1]: second addRange() must result in rangeCount being 1
463 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 34 [docume nt, 0, document, 1]: second addRange() must result in the selection's last range having the specified endpoints assert_equals: startContainer of the Selection's last Range must match the added Range expected Document node with 2 children bu t got Text node "Äb̈c̈d̈ëf̈g̈ḧ
464 "
465 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 34 [docume nt, 0, document, 1]: second addRange() must result in the selection's last range being the same object we added assert_equals: getRangeAt(rangeCount - 1) must r eturn the same object we added expected object "" but got object ""
466 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 34 [docume nt, 0, document, 1]: modifying the second added range must modify the Selection' s last Range assert_equals: After mutating the second added Range, startOffset o f the Selection's last Range must match the added Range expected 0 but got 6
467 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 34 [docume nt, 0, document, 1]: modifying the Selection's last Range must modify the second added Range assert_equals: After second addRange(), after mutating the Selectio n's last Range, startOffset of the Selection's last Range must match the added R ange expected 0 but got 6
468 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 35 [docume nt, 0, document, 2]: first addRange() must not throw exceptions or modify the ra nge it's given
469 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 35 [docume nt, 0, document, 2]: first addRange() must result in rangeCount being 1
470 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 35 [docume nt, 0, document, 2]: first addRange() must result in the selection's last range having the specified endpoints
471 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 35 [docume nt, 0, document, 2]: first addRange() must result in the selection's last range being the same object we added
472 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 35 [docume nt, 0, document, 2]: modifying the first added range must modify the Selection's last Range
473 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 35 [docume nt, 0, document, 2]: modifying the Selection's last Range must modify the first added Range
474 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 35 [docume nt, 0, document, 2]: second addRange() must not throw exceptions or modify the r ange it's given
475 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 35 [docume nt, 0, document, 2]: second addRange() must result in rangeCount being 1
476 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 35 [docume nt, 0, document, 2]: second addRange() must result in the selection's last range having the specified endpoints assert_equals: startContainer of the Selection's last Range must match the added Range expected Document node with 2 children bu t got Text node "Äb̈c̈d̈ëf̈g̈ḧ
477 "
478 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 35 [docume nt, 0, document, 2]: second addRange() must result in the selection's last range being the same object we added assert_equals: getRangeAt(rangeCount - 1) must r eturn the same object we added expected object "Selection.addRange() tests
479
480 Äb̈c̈d̈ëf̈g̈ḧ
481 Ijklmnop
482 QrstuvwxYzabcdefGhijklmn
483
484
485
486
487
488 "use strict";
489
490 testAddRangeSubSet(28, 32);
491 testDiv.style.display = "none";
492 " but got object ""
493 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 35 [docume nt, 0, document, 2]: modifying the second added range must modify the Selection' s last Range assert_equals: After mutating the second added Range, startOffset o f the Selection's last Range must match the added Range expected 0 but got 6
494 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 35 [docume nt, 0, document, 2]: modifying the Selection's last Range must modify the second added Range assert_equals: After second addRange(), after mutating the Selectio n's last Range, startOffset of the Selection's last Range must match the added R ange expected 0 but got 6
495 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 36 [docume nt, 1, document, 2]: first addRange() must not throw exceptions or modify the ra nge it's given
496 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 36 [docume nt, 1, document, 2]: first addRange() must result in rangeCount being 1
497 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 36 [docume nt, 1, document, 2]: first addRange() must result in the selection's last range having the specified endpoints
498 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 36 [docume nt, 1, document, 2]: first addRange() must result in the selection's last range being the same object we added
499 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 36 [docume nt, 1, document, 2]: modifying the first added range must modify the Selection's last Range
500 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 36 [docume nt, 1, document, 2]: modifying the Selection's last Range must modify the first added Range
501 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 36 [docume nt, 1, document, 2]: second addRange() must not throw exceptions or modify the r ange it's given
502 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 36 [docume nt, 1, document, 2]: second addRange() must result in rangeCount being 1
503 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 36 [docume nt, 1, document, 2]: second addRange() must result in the selection's last range having the specified endpoints assert_equals: startContainer of the Selection's last Range must match the added Range expected Document node with 2 children bu t got Text node "Äb̈c̈d̈ëf̈g̈ḧ
504 "
505 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 36 [docume nt, 1, document, 2]: second addRange() must result in the selection's last range being the same object we added assert_equals: getRangeAt(rangeCount - 1) must r eturn the same object we added expected object "Selection.addRange() tests
506
507 Äb̈c̈d̈ëf̈g̈ḧ
508 Ijklmnop
509 QrstuvwxYzabcdefGhijklmn
510
511
512
513
514
515 "use strict";
516
517 testAddRangeSubSet(28, 32);
518 testDiv.style.display = "none";
519 " but got object ""
520 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 36 [docume nt, 1, document, 2]: modifying the second added range must modify the Selection' s last Range assert_equals: After mutating the second added Range, startOffset o f the Selection's last Range must match the added Range expected 0 but got 6
521 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 36 [docume nt, 1, document, 2]: modifying the Selection's last Range must modify the second added Range assert_equals: After second addRange(), after mutating the Selectio n's last Range, startOffset of the Selection's last Range must match the added R ange expected 0 but got 6
522 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 37 [testDi v, 0, comment, 5]: first addRange() must not throw exceptions or modify the rang e it's given
523 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 37 [testDi v, 0, comment, 5]: first addRange() must result in rangeCount being 1
524 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 37 [testDi v, 0, comment, 5]: first addRange() must result in the selection's last range ha ving the specified endpoints
525 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 37 [testDi v, 0, comment, 5]: first addRange() must result in the selection's last range be ing the same object we added
526 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 37 [testDi v, 0, comment, 5]: modifying the first added range must modify the Selection's l ast Range
527 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 37 [testDi v, 0, comment, 5]: modifying the Selection's last Range must modify the first ad ded Range
528 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 37 [testDi v, 0, comment, 5]: second addRange() must not throw exceptions or modify the ran ge it's given
529 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 37 [testDi v, 0, comment, 5]: second addRange() must result in rangeCount being 1
530 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 37 [testDi v, 0, comment, 5]: second addRange() must result in the selection's last range h aving the specified endpoints assert_equals: startContainer of the Selection's l ast Range must match the added Range expected Element node <div id="test"><p id= "a">Äb̈c̈d̈ëf̈g̈ḧ
531 </p><p id="b" s... but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
532 "
533 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 37 [testDi v, 0, comment, 5]: second addRange() must result in the selection's last range b eing the same object we added assert_equals: getRangeAt(rangeCount - 1) must ret urn the same object we added expected object "Äb̈c̈d̈ëf̈g̈ḧ
534 Ijklmnop
535 QrstuvwxYzabcdefGhijklmn" but got object ""
536 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 37 [testDi v, 0, comment, 5]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6
537 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 37 [testDi v, 0, comment, 5]: modifying the Selection's last Range must modify the second a dded Range assert_equals: After second addRange(), after mutating the Selection' s last Range, startOffset of the Selection's last Range must match the added Ran ge expected 0 but got 6
538 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 38 [paras[ 2].firstChild, 4, comment, 2]: first addRange() must not throw exceptions or mod ify the range it's given
539 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 38 [paras[ 2].firstChild, 4, comment, 2]: first addRange() must result in rangeCount being 1
540 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 38 [paras[ 2].firstChild, 4, comment, 2]: first addRange() must result in the selection's l ast range having the specified endpoints
541 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 38 [paras[ 2].firstChild, 4, comment, 2]: first addRange() must result in the selection's l ast range being the same object we added
542 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 38 [paras[ 2].firstChild, 4, comment, 2]: modifying the first added range must modify the S election's last Range
543 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 38 [paras[ 2].firstChild, 4, comment, 2]: modifying the Selection's last Range must modify the first added Range
544 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 38 [paras[ 2].firstChild, 4, comment, 2]: second addRange() must not throw exceptions or mo dify the range it's given
545 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 38 [paras[ 2].firstChild, 4, comment, 2]: second addRange() must result in rangeCount being 1
546 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 38 [paras[ 2].firstChild, 4, comment, 2]: second addRange() must result in the selection's last range having the specified endpoints assert_equals: startContainer of the S election's last Range must match the added Range expected Text node "Qrstuvwx" b ut got Text node "Äb̈c̈d̈ëf̈g̈ḧ
547 "
548 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 38 [paras[ 2].firstChild, 4, comment, 2]: second addRange() must result in the selection's last range being the same object we added assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "uvwxYzabcdefGhijklmn" but got object ""
549 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 38 [paras[ 2].firstChild, 4, comment, 2]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, sta rtOffset of the Selection's last Range must match the added Range expected 0 but got 6
550 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 38 [paras[ 2].firstChild, 4, comment, 2]: modifying the Selection's last Range must modify the second added Range assert_equals: After second addRange(), after mutating th e Selection's last Range, startOffset of the Selection's last Range must match t he added Range expected 0 but got 6
551 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 39 [paras[ 3], 1, comment, 8]: first addRange() must not throw exceptions or modify the ran ge it's given
552 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 39 [paras[ 3], 1, comment, 8]: first addRange() must result in rangeCount being 1
553 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 39 [paras[ 3], 1, comment, 8]: first addRange() must result in the selection's last range h aving the specified endpoints
554 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 39 [paras[ 3], 1, comment, 8]: first addRange() must result in the selection's last range b eing the same object we added
555 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 39 [paras[ 3], 1, comment, 8]: modifying the first added range must modify the Selection's last Range
556 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 39 [paras[ 3], 1, comment, 8]: modifying the Selection's last Range must modify the first a dded Range
557 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 39 [paras[ 3], 1, comment, 8]: second addRange() must not throw exceptions or modify the ra nge it's given
558 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 39 [paras[ 3], 1, comment, 8]: second addRange() must result in rangeCount being 1
559 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 39 [paras[ 3], 1, comment, 8]: second addRange() must result in the selection's last range having the specified endpoints assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node <p id="d" style="dis play:none">Yzabcdef</p> but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
560 "
561 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 39 [paras[ 3], 1, comment, 8]: second addRange() must result in the selection's last range being the same object we added assert_equals: getRangeAt(rangeCount - 1) must re turn the same object we added expected object "Ghijklmn" but got object ""
562 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 39 [paras[ 3], 1, comment, 8]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6
563 FAIL Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 39 [paras[ 3], 1, comment, 8]: modifying the Selection's last Range must modify the second added Range assert_equals: After second addRange(), after mutating the Selection 's last Range, startOffset of the Selection's last Range must match the added Ra nge expected 0 but got 6
564 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 40 [foreig nDoc, 0, foreignDoc, 0]: first addRange() must not throw exceptions or modify th e range it's given
565 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 40 [foreig nDoc, 0, foreignDoc, 0]: first addRange() must result in rangeCount being 1
566 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 40 [foreig nDoc, 0, foreignDoc, 0]: first addRange() must result in the selection's last ra nge having the specified endpoints
567 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 40 [foreig nDoc, 0, foreignDoc, 0]: first addRange() must result in the selection's last ra nge being the same object we added
568 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 40 [foreig nDoc, 0, foreignDoc, 0]: modifying the first added range must modify the Selecti on's last Range
569 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 40 [foreig nDoc, 0, foreignDoc, 0]: modifying the Selection's last Range must modify the fi rst added Range
570 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 40 [foreig nDoc, 0, foreignDoc, 0]: second addRange() must do nothing
571 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 41 [foreig nDoc, 1, foreignComment, 2]: first addRange() must not throw exceptions or modif y the range it's given
572 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 41 [foreig nDoc, 1, foreignComment, 2]: first addRange() must result in rangeCount being 1
573 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 41 [foreig nDoc, 1, foreignComment, 2]: first addRange() must result in the selection's las t range having the specified endpoints
574 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 41 [foreig nDoc, 1, foreignComment, 2]: first addRange() must result in the selection's las t range being the same object we added
575 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 41 [foreig nDoc, 1, foreignComment, 2]: modifying the first added range must modify the Sel ection's last Range
576 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 41 [foreig nDoc, 1, foreignComment, 2]: modifying the Selection's last Range must modify th e first added Range
577 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 41 [foreig nDoc, 1, foreignComment, 2]: second addRange() must do nothing
578 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 42 [foreig nDoc.body, 0, foreignTextNode, 36]: first addRange() must not throw exceptions o r modify the range it's given
579 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 42 [foreig nDoc.body, 0, foreignTextNode, 36]: first addRange() must result in rangeCount b eing 1
580 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 42 [foreig nDoc.body, 0, foreignTextNode, 36]: first addRange() must result in the selectio n's last range having the specified endpoints
581 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 42 [foreig nDoc.body, 0, foreignTextNode, 36]: first addRange() must result in the selectio n's last range being the same object we added
582 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 42 [foreig nDoc.body, 0, foreignTextNode, 36]: modifying the first added range must modify the Selection's last Range
583 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 42 [foreig nDoc.body, 0, foreignTextNode, 36]: modifying the Selection's last Range must mo dify the first added Range
584 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 42 [foreig nDoc.body, 0, foreignTextNode, 36]: second addRange() must do nothing
585 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 43 [xmlDoc , 0, xmlDoc, 0]: first addRange() must not throw exceptions or modify the range it's given
586 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 43 [xmlDoc , 0, xmlDoc, 0]: first addRange() must result in rangeCount being 1
587 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 43 [xmlDoc , 0, xmlDoc, 0]: first addRange() must result in the selection's last range havi ng the specified endpoints
588 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 43 [xmlDoc , 0, xmlDoc, 0]: first addRange() must result in the selection's last range bein g the same object we added
589 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 43 [xmlDoc , 0, xmlDoc, 0]: modifying the first added range must modify the Selection's las t Range
590 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 43 [xmlDoc , 0, xmlDoc, 0]: modifying the Selection's last Range must modify the first adde d Range
591 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 43 [xmlDoc , 0, xmlDoc, 0]: second addRange() must do nothing
592 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 44 [xmlDoc , 1, xmlComment, 0]: first addRange() must not throw exceptions or modify the ra nge it's given
593 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 44 [xmlDoc , 1, xmlComment, 0]: first addRange() must result in rangeCount being 1
594 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 44 [xmlDoc , 1, xmlComment, 0]: first addRange() must result in the selection's last range having the specified endpoints
595 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 44 [xmlDoc , 1, xmlComment, 0]: first addRange() must result in the selection's last range being the same object we added
596 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 44 [xmlDoc , 1, xmlComment, 0]: modifying the first added range must modify the Selection's last Range
597 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 44 [xmlDoc , 1, xmlComment, 0]: modifying the Selection's last Range must modify the first added Range
598 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 44 [xmlDoc , 1, xmlComment, 0]: second addRange() must do nothing
599 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 45 [detach edTextNode, 0, detachedTextNode, 8]: first addRange() must not throw exceptions or modify the range it's given
600 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 45 [detach edTextNode, 0, detachedTextNode, 8]: first addRange() must result in rangeCount being 1
601 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 45 [detach edTextNode, 0, detachedTextNode, 8]: first addRange() must result in the selecti on's last range having the specified endpoints
602 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 45 [detach edTextNode, 0, detachedTextNode, 8]: first addRange() must result in the selecti on's last range being the same object we added
603 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 45 [detach edTextNode, 0, detachedTextNode, 8]: modifying the first added range must modify the Selection's last Range
604 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 45 [detach edTextNode, 0, detachedTextNode, 8]: modifying the Selection's last Range must m odify the first added Range
605 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 45 [detach edTextNode, 0, detachedTextNode, 8]: second addRange() must do nothing
606 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 46 [detach edForeignTextNode, 7, detachedForeignTextNode, 7]: first addRange() must not thr ow exceptions or modify the range it's given
607 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 46 [detach edForeignTextNode, 7, detachedForeignTextNode, 7]: first addRange() must result in rangeCount being 1
608 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 46 [detach edForeignTextNode, 7, detachedForeignTextNode, 7]: first addRange() must result in the selection's last range having the specified endpoints
609 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 46 [detach edForeignTextNode, 7, detachedForeignTextNode, 7]: first addRange() must result in the selection's last range being the same object we added
610 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 46 [detach edForeignTextNode, 7, detachedForeignTextNode, 7]: modifying the first added ran ge must modify the Selection's last Range
611 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 46 [detach edForeignTextNode, 7, detachedForeignTextNode, 7]: modifying the Selection's las t Range must modify the first added Range
612 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 46 [detach edForeignTextNode, 7, detachedForeignTextNode, 7]: second addRange() must do not hing
613 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 47 [detach edForeignTextNode, 0, detachedForeignTextNode, 8]: first addRange() must not thr ow exceptions or modify the range it's given
614 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 47 [detach edForeignTextNode, 0, detachedForeignTextNode, 8]: first addRange() must result in rangeCount being 1
615 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 47 [detach edForeignTextNode, 0, detachedForeignTextNode, 8]: first addRange() must result in the selection's last range having the specified endpoints
616 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 47 [detach edForeignTextNode, 0, detachedForeignTextNode, 8]: first addRange() must result in the selection's last range being the same object we added
617 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 47 [detach edForeignTextNode, 0, detachedForeignTextNode, 8]: modifying the first added ran ge must modify the Selection's last Range
618 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 47 [detach edForeignTextNode, 0, detachedForeignTextNode, 8]: modifying the Selection's las t Range must modify the first added Range
619 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 47 [detach edForeignTextNode, 0, detachedForeignTextNode, 8]: second addRange() must do not hing
620 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 48 [detach edXmlTextNode, 7, detachedXmlTextNode, 7]: first addRange() must not throw excep tions or modify the range it's given
621 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 48 [detach edXmlTextNode, 7, detachedXmlTextNode, 7]: first addRange() must result in range Count being 1
622 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 48 [detach edXmlTextNode, 7, detachedXmlTextNode, 7]: first addRange() must result in the s election's last range having the specified endpoints
623 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 48 [detach edXmlTextNode, 7, detachedXmlTextNode, 7]: first addRange() must result in the s election's last range being the same object we added
624 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 48 [detach edXmlTextNode, 7, detachedXmlTextNode, 7]: modifying the first added range must modify the Selection's last Range
625 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 48 [detach edXmlTextNode, 7, detachedXmlTextNode, 7]: modifying the Selection's last Range must modify the first added Range
626 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 48 [detach edXmlTextNode, 7, detachedXmlTextNode, 7]: second addRange() must do nothing
627 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 49 [detach edXmlTextNode, 0, detachedXmlTextNode, 8]: first addRange() must not throw excep tions or modify the range it's given
628 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 49 [detach edXmlTextNode, 0, detachedXmlTextNode, 8]: first addRange() must result in range Count being 1
629 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 49 [detach edXmlTextNode, 0, detachedXmlTextNode, 8]: first addRange() must result in the s election's last range having the specified endpoints
630 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 49 [detach edXmlTextNode, 0, detachedXmlTextNode, 8]: first addRange() must result in the s election's last range being the same object we added
631 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 49 [detach edXmlTextNode, 0, detachedXmlTextNode, 8]: modifying the first added range must modify the Selection's last Range
632 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 49 [detach edXmlTextNode, 0, detachedXmlTextNode, 8]: modifying the Selection's last Range must modify the first added Range
633 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 49 [detach edXmlTextNode, 0, detachedXmlTextNode, 8]: second addRange() must do nothing
634 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 50 [detach edComment, 3, detachedComment, 4]: first addRange() must not throw exceptions or modify the range it's given
635 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 50 [detach edComment, 3, detachedComment, 4]: first addRange() must result in rangeCount be ing 1
636 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 50 [detach edComment, 3, detachedComment, 4]: first addRange() must result in the selection 's last range having the specified endpoints
637 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 50 [detach edComment, 3, detachedComment, 4]: first addRange() must result in the selection 's last range being the same object we added
638 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 50 [detach edComment, 3, detachedComment, 4]: modifying the first added range must modify t he Selection's last Range
639 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 50 [detach edComment, 3, detachedComment, 4]: modifying the Selection's last Range must mod ify the first added Range
640 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 50 [detach edComment, 3, detachedComment, 4]: second addRange() must do nothing
641 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 51 [detach edComment, 5, detachedComment, 5]: first addRange() must not throw exceptions or modify the range it's given
642 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 51 [detach edComment, 5, detachedComment, 5]: first addRange() must result in rangeCount be ing 1
643 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 51 [detach edComment, 5, detachedComment, 5]: first addRange() must result in the selection 's last range having the specified endpoints
644 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 51 [detach edComment, 5, detachedComment, 5]: first addRange() must result in the selection 's last range being the same object we added
645 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 51 [detach edComment, 5, detachedComment, 5]: modifying the first added range must modify t he Selection's last Range
646 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 51 [detach edComment, 5, detachedComment, 5]: modifying the Selection's last Range must mod ify the first added Range
647 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 51 [detach edComment, 5, detachedComment, 5]: second addRange() must do nothing
648 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 52 [detach edForeignComment, 0, detachedForeignComment, 1]: first addRange() must not throw exceptions or modify the range it's given
649 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 52 [detach edForeignComment, 0, detachedForeignComment, 1]: first addRange() must result in rangeCount being 1
650 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 52 [detach edForeignComment, 0, detachedForeignComment, 1]: first addRange() must result in the selection's last range having the specified endpoints
651 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 52 [detach edForeignComment, 0, detachedForeignComment, 1]: first addRange() must result in the selection's last range being the same object we added
652 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 52 [detach edForeignComment, 0, detachedForeignComment, 1]: modifying the first added range must modify the Selection's last Range
653 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 52 [detach edForeignComment, 0, detachedForeignComment, 1]: modifying the Selection's last Range must modify the first added Range
654 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 52 [detach edForeignComment, 0, detachedForeignComment, 1]: second addRange() must do nothi ng
655 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 53 [detach edForeignComment, 4, detachedForeignComment, 4]: first addRange() must not throw exceptions or modify the range it's given
656 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 53 [detach edForeignComment, 4, detachedForeignComment, 4]: first addRange() must result in rangeCount being 1
657 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 53 [detach edForeignComment, 4, detachedForeignComment, 4]: first addRange() must result in the selection's last range having the specified endpoints
658 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 53 [detach edForeignComment, 4, detachedForeignComment, 4]: first addRange() must result in the selection's last range being the same object we added
659 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 53 [detach edForeignComment, 4, detachedForeignComment, 4]: modifying the first added range must modify the Selection's last Range
660 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 53 [detach edForeignComment, 4, detachedForeignComment, 4]: modifying the Selection's last Range must modify the first added Range
661 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 53 [detach edForeignComment, 4, detachedForeignComment, 4]: second addRange() must do nothi ng
662 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 54 [detach edXmlComment, 2, detachedXmlComment, 6]: first addRange() must not throw excepti ons or modify the range it's given
663 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 54 [detach edXmlComment, 2, detachedXmlComment, 6]: first addRange() must result in rangeCo unt being 1
664 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 54 [detach edXmlComment, 2, detachedXmlComment, 6]: first addRange() must result in the sel ection's last range having the specified endpoints
665 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 54 [detach edXmlComment, 2, detachedXmlComment, 6]: first addRange() must result in the sel ection's last range being the same object we added
666 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 54 [detach edXmlComment, 2, detachedXmlComment, 6]: modifying the first added range must mo dify the Selection's last Range
667 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 54 [detach edXmlComment, 2, detachedXmlComment, 6]: modifying the Selection's last Range mu st modify the first added Range
668 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 54 [detach edXmlComment, 2, detachedXmlComment, 6]: second addRange() must do nothing
669 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 55 [docfra g, 0, docfrag, 0]: first addRange() must not throw exceptions or modify the rang e it's given
670 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 55 [docfra g, 0, docfrag, 0]: first addRange() must result in rangeCount being 1
671 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 55 [docfra g, 0, docfrag, 0]: first addRange() must result in the selection's last range ha ving the specified endpoints
672 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 55 [docfra g, 0, docfrag, 0]: first addRange() must result in the selection's last range be ing the same object we added
673 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 55 [docfra g, 0, docfrag, 0]: modifying the first added range must modify the Selection's l ast Range
674 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 55 [docfra g, 0, docfrag, 0]: modifying the Selection's last Range must modify the first ad ded Range
675 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 55 [docfra g, 0, docfrag, 0]: second addRange() must do nothing
676 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 56 [foreig nDocfrag, 0, foreignDocfrag, 0]: first addRange() must not throw exceptions or m odify the range it's given
677 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 56 [foreig nDocfrag, 0, foreignDocfrag, 0]: first addRange() must result in rangeCount bein g 1
678 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 56 [foreig nDocfrag, 0, foreignDocfrag, 0]: first addRange() must result in the selection's last range having the specified endpoints
679 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 56 [foreig nDocfrag, 0, foreignDocfrag, 0]: first addRange() must result in the selection's last range being the same object we added
680 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 56 [foreig nDocfrag, 0, foreignDocfrag, 0]: modifying the first added range must modify the Selection's last Range
681 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 56 [foreig nDocfrag, 0, foreignDocfrag, 0]: modifying the Selection's last Range must modif y the first added Range
682 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 56 [foreig nDocfrag, 0, foreignDocfrag, 0]: second addRange() must do nothing
683 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 57 [xmlDoc frag, 0, xmlDocfrag, 0]: first addRange() must not throw exceptions or modify th e range it's given
684 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 57 [xmlDoc frag, 0, xmlDocfrag, 0]: first addRange() must result in rangeCount being 1
685 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 57 [xmlDoc frag, 0, xmlDocfrag, 0]: first addRange() must result in the selection's last ra nge having the specified endpoints
686 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 57 [xmlDoc frag, 0, xmlDocfrag, 0]: first addRange() must result in the selection's last ra nge being the same object we added
687 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 57 [xmlDoc frag, 0, xmlDocfrag, 0]: modifying the first added range must modify the Selecti on's last Range
688 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 57 [xmlDoc frag, 0, xmlDocfrag, 0]: modifying the Selection's last Range must modify the fi rst added Range
689 PASS Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 57 [xmlDoc frag, 0, xmlDocfrag, 0]: second addRange() must do nothing
690 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 0 [paras[0 ].firstChild, 0, paras[0].firstChild, 0]: first addRange() must not throw except ions or modify the range it's given
691 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 0 [paras[0 ].firstChild, 0, paras[0].firstChild, 0]: first addRange() must result in rangeC ount being 1
692 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 0 [paras[0 ].firstChild, 0, paras[0].firstChild, 0]: first addRange() must result in the se lection's last range having the specified endpoints
693 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 0 [paras[0 ].firstChild, 0, paras[0].firstChild, 0]: first addRange() must result in the se lection's last range being the same object we added
694 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 0 [paras[0 ].firstChild, 0, paras[0].firstChild, 0]: modifying the first added range must m odify the Selection's last Range
695 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 0 [paras[0 ].firstChild, 0, paras[0].firstChild, 0]: modifying the Selection's last Range m ust modify the first added Range
696 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 0 [paras[0 ].firstChild, 0, paras[0].firstChild, 0]: second addRange() must not throw excep tions or modify the range it's given
697 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 0 [paras[0 ].firstChild, 0, paras[0].firstChild, 0]: second addRange() must result in range Count being 1
698 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 0 [paras[0 ].firstChild, 0, paras[0].firstChild, 0]: second addRange() must result in the s election's last range having the specified endpoints assert_equals: startOffset of the Selection's last Range must match the added Range expected 0 but got 6
699 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 0 [paras[0 ].firstChild, 0, paras[0].firstChild, 0]: second addRange() must result in the s election's last range being the same object we added assert_equals: getRangeAt(r angeCount - 1) must return the same object we added expected object "" but got o bject ""
700 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 0 [paras[0 ].firstChild, 0, paras[0].firstChild, 0]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range exp ected 0 but got 6
701 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 0 [paras[0 ].firstChild, 0, paras[0].firstChild, 0]: modifying the Selection's last Range m ust modify the second added Range assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range m ust match the added Range expected 0 but got 6
702 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 1 [paras[0 ].firstChild, 0, paras[0].firstChild, 1]: first addRange() must not throw except ions or modify the range it's given
703 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 1 [paras[0 ].firstChild, 0, paras[0].firstChild, 1]: first addRange() must result in rangeC ount being 1
704 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 1 [paras[0 ].firstChild, 0, paras[0].firstChild, 1]: first addRange() must result in the se lection's last range having the specified endpoints
705 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 1 [paras[0 ].firstChild, 0, paras[0].firstChild, 1]: first addRange() must result in the se lection's last range being the same object we added
706 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 1 [paras[0 ].firstChild, 0, paras[0].firstChild, 1]: modifying the first added range must m odify the Selection's last Range
707 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 1 [paras[0 ].firstChild, 0, paras[0].firstChild, 1]: modifying the Selection's last Range m ust modify the first added Range
708 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 1 [paras[0 ].firstChild, 0, paras[0].firstChild, 1]: second addRange() must not throw excep tions or modify the range it's given
709 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 1 [paras[0 ].firstChild, 0, paras[0].firstChild, 1]: second addRange() must result in range Count being 1
710 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 1 [paras[0 ].firstChild, 0, paras[0].firstChild, 1]: second addRange() must result in the s election's last range having the specified endpoints assert_equals: startOffset of the Selection's last Range must match the added Range expected 0 but got 6
711 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 1 [paras[0 ].firstChild, 0, paras[0].firstChild, 1]: second addRange() must result in the s election's last range being the same object we added assert_equals: getRangeAt(r angeCount - 1) must return the same object we added expected object "A" but got object ""
712 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 1 [paras[0 ].firstChild, 0, paras[0].firstChild, 1]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range exp ected 0 but got 6
713 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 1 [paras[0 ].firstChild, 0, paras[0].firstChild, 1]: modifying the Selection's last Range m ust modify the second added Range assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range m ust match the added Range expected 0 but got 6
714 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 2 [paras[0 ].firstChild, 2, paras[0].firstChild, 8]: first addRange() must not throw except ions or modify the range it's given
715 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 2 [paras[0 ].firstChild, 2, paras[0].firstChild, 8]: first addRange() must result in rangeC ount being 1
716 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 2 [paras[0 ].firstChild, 2, paras[0].firstChild, 8]: first addRange() must result in the se lection's last range having the specified endpoints
717 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 2 [paras[0 ].firstChild, 2, paras[0].firstChild, 8]: first addRange() must result in the se lection's last range being the same object we added
718 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 2 [paras[0 ].firstChild, 2, paras[0].firstChild, 8]: modifying the first added range must m odify the Selection's last Range
719 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 2 [paras[0 ].firstChild, 2, paras[0].firstChild, 8]: modifying the Selection's last Range m ust modify the first added Range
720 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 2 [paras[0 ].firstChild, 2, paras[0].firstChild, 8]: second addRange() must not throw excep tions or modify the range it's given
721 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 2 [paras[0 ].firstChild, 2, paras[0].firstChild, 8]: second addRange() must result in range Count being 1
722 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 2 [paras[0 ].firstChild, 2, paras[0].firstChild, 8]: second addRange() must result in the s election's last range having the specified endpoints assert_equals: startOffset of the Selection's last Range must match the added Range expected 2 but got 6
723 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 2 [paras[0 ].firstChild, 2, paras[0].firstChild, 8]: second addRange() must result in the s election's last range being the same object we added assert_equals: getRangeAt(r angeCount - 1) must return the same object we added expected object "b̈c̈d̈" but got object ""
724 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 2 [paras[0 ].firstChild, 2, paras[0].firstChild, 8]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range exp ected 0 but got 6
725 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 2 [paras[0 ].firstChild, 2, paras[0].firstChild, 8]: modifying the Selection's last Range m ust modify the second added Range assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range m ust match the added Range expected 0 but got 6
726 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 3 [paras[0 ].firstChild, 2, paras[0].firstChild, 9]: first addRange() must not throw except ions or modify the range it's given
727 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 3 [paras[0 ].firstChild, 2, paras[0].firstChild, 9]: first addRange() must result in rangeC ount being 1
728 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 3 [paras[0 ].firstChild, 2, paras[0].firstChild, 9]: first addRange() must result in the se lection's last range having the specified endpoints
729 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 3 [paras[0 ].firstChild, 2, paras[0].firstChild, 9]: first addRange() must result in the se lection's last range being the same object we added
730 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 3 [paras[0 ].firstChild, 2, paras[0].firstChild, 9]: modifying the first added range must m odify the Selection's last Range
731 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 3 [paras[0 ].firstChild, 2, paras[0].firstChild, 9]: modifying the Selection's last Range m ust modify the first added Range
732 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 3 [paras[0 ].firstChild, 2, paras[0].firstChild, 9]: second addRange() must not throw excep tions or modify the range it's given
733 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 3 [paras[0 ].firstChild, 2, paras[0].firstChild, 9]: second addRange() must result in range Count being 1
734 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 3 [paras[0 ].firstChild, 2, paras[0].firstChild, 9]: second addRange() must result in the s election's last range having the specified endpoints assert_equals: startOffset of the Selection's last Range must match the added Range expected 2 but got 6
735 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 3 [paras[0 ].firstChild, 2, paras[0].firstChild, 9]: second addRange() must result in the s election's last range being the same object we added assert_equals: getRangeAt(r angeCount - 1) must return the same object we added expected object "b̈c̈d̈e" bu t got object ""
736 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 3 [paras[0 ].firstChild, 2, paras[0].firstChild, 9]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range exp ected 0 but got 6
737 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 3 [paras[0 ].firstChild, 2, paras[0].firstChild, 9]: modifying the Selection's last Range m ust modify the second added Range assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range m ust match the added Range expected 0 but got 6
738 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 4 [paras[1 ].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw except ions or modify the range it's given
739 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 4 [paras[1 ].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeC ount being 1
740 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 4 [paras[1 ].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the se lection's last range having the specified endpoints
741 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 4 [paras[1 ].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the se lection's last range being the same object we added
742 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 4 [paras[1 ].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must m odify the Selection's last Range
743 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 4 [paras[1 ].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range m ust modify the first added Range
744 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 4 [paras[1 ].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw excep tions or modify the range it's given
745 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 4 [paras[1 ].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in range Count being 1
746 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 4 [paras[1 ].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the s election's last range having the specified endpoints assert_equals: startContain er of the Selection's last Range must match the added Range expected Text node " Ijklmnop
747 " but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
748 "
749 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 4 [paras[1 ].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the s election's last range being the same object we added assert_equals: getRangeAt(r angeCount - 1) must return the same object we added expected object "" but got o bject ""
750 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 4 [paras[1 ].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range exp ected 0 but got 6
751 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 4 [paras[1 ].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range m ust modify the second added Range assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range m ust match the added Range expected 0 but got 6
752 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 5 [paras[1 ].firstChild, 0, paras[1].firstChild, 1]: first addRange() must not throw except ions or modify the range it's given
753 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 5 [paras[1 ].firstChild, 0, paras[1].firstChild, 1]: first addRange() must result in rangeC ount being 1
754 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 5 [paras[1 ].firstChild, 0, paras[1].firstChild, 1]: first addRange() must result in the se lection's last range having the specified endpoints
755 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 5 [paras[1 ].firstChild, 0, paras[1].firstChild, 1]: first addRange() must result in the se lection's last range being the same object we added
756 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 5 [paras[1 ].firstChild, 0, paras[1].firstChild, 1]: modifying the first added range must m odify the Selection's last Range
757 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 5 [paras[1 ].firstChild, 0, paras[1].firstChild, 1]: modifying the Selection's last Range m ust modify the first added Range
758 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 5 [paras[1 ].firstChild, 0, paras[1].firstChild, 1]: second addRange() must not throw excep tions or modify the range it's given
759 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 5 [paras[1 ].firstChild, 0, paras[1].firstChild, 1]: second addRange() must result in range Count being 1
760 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 5 [paras[1 ].firstChild, 0, paras[1].firstChild, 1]: second addRange() must result in the s election's last range having the specified endpoints assert_equals: startContain er of the Selection's last Range must match the added Range expected Text node " Ijklmnop
761 " but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
762 "
763 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 5 [paras[1 ].firstChild, 0, paras[1].firstChild, 1]: second addRange() must result in the s election's last range being the same object we added assert_equals: getRangeAt(r angeCount - 1) must return the same object we added expected object "I" but got object ""
764 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 5 [paras[1 ].firstChild, 0, paras[1].firstChild, 1]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range exp ected 0 but got 6
765 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 5 [paras[1 ].firstChild, 0, paras[1].firstChild, 1]: modifying the Selection's last Range m ust modify the second added Range assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range m ust match the added Range expected 0 but got 6
766 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 6 [paras[1 ].firstChild, 2, paras[1].firstChild, 8]: first addRange() must not throw except ions or modify the range it's given
767 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 6 [paras[1 ].firstChild, 2, paras[1].firstChild, 8]: first addRange() must result in rangeC ount being 1
768 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 6 [paras[1 ].firstChild, 2, paras[1].firstChild, 8]: first addRange() must result in the se lection's last range having the specified endpoints
769 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 6 [paras[1 ].firstChild, 2, paras[1].firstChild, 8]: first addRange() must result in the se lection's last range being the same object we added
770 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 6 [paras[1 ].firstChild, 2, paras[1].firstChild, 8]: modifying the first added range must m odify the Selection's last Range
771 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 6 [paras[1 ].firstChild, 2, paras[1].firstChild, 8]: modifying the Selection's last Range m ust modify the first added Range
772 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 6 [paras[1 ].firstChild, 2, paras[1].firstChild, 8]: second addRange() must not throw excep tions or modify the range it's given
773 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 6 [paras[1 ].firstChild, 2, paras[1].firstChild, 8]: second addRange() must result in range Count being 1
774 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 6 [paras[1 ].firstChild, 2, paras[1].firstChild, 8]: second addRange() must result in the s election's last range having the specified endpoints assert_equals: startContain er of the Selection's last Range must match the added Range expected Text node " Ijklmnop
775 " but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
776 "
777 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 6 [paras[1 ].firstChild, 2, paras[1].firstChild, 8]: second addRange() must result in the s election's last range being the same object we added assert_equals: getRangeAt(r angeCount - 1) must return the same object we added expected object "klmnop" but got object ""
778 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 6 [paras[1 ].firstChild, 2, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range exp ected 0 but got 6
779 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 6 [paras[1 ].firstChild, 2, paras[1].firstChild, 8]: modifying the Selection's last Range m ust modify the second added Range assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range m ust match the added Range expected 0 but got 6
780 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 7 [paras[1 ].firstChild, 2, paras[1].firstChild, 9]: first addRange() must not throw except ions or modify the range it's given
781 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 7 [paras[1 ].firstChild, 2, paras[1].firstChild, 9]: first addRange() must result in rangeC ount being 1
782 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 7 [paras[1 ].firstChild, 2, paras[1].firstChild, 9]: first addRange() must result in the se lection's last range having the specified endpoints
783 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 7 [paras[1 ].firstChild, 2, paras[1].firstChild, 9]: first addRange() must result in the se lection's last range being the same object we added
784 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 7 [paras[1 ].firstChild, 2, paras[1].firstChild, 9]: modifying the first added range must m odify the Selection's last Range
785 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 7 [paras[1 ].firstChild, 2, paras[1].firstChild, 9]: modifying the Selection's last Range m ust modify the first added Range
786 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 7 [paras[1 ].firstChild, 2, paras[1].firstChild, 9]: second addRange() must not throw excep tions or modify the range it's given
787 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 7 [paras[1 ].firstChild, 2, paras[1].firstChild, 9]: second addRange() must result in range Count being 1
788 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 7 [paras[1 ].firstChild, 2, paras[1].firstChild, 9]: second addRange() must result in the s election's last range having the specified endpoints assert_equals: startContain er of the Selection's last Range must match the added Range expected Text node " Ijklmnop
789 " but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
790 "
791 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 7 [paras[1 ].firstChild, 2, paras[1].firstChild, 9]: second addRange() must result in the s election's last range being the same object we added assert_equals: getRangeAt(r angeCount - 1) must return the same object we added expected object "klmnop
792 " but got object ""
793 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 7 [paras[1 ].firstChild, 2, paras[1].firstChild, 9]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range exp ected 0 but got 6
794 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 7 [paras[1 ].firstChild, 2, paras[1].firstChild, 9]: modifying the Selection's last Range m ust modify the second added Range assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range m ust match the added Range expected 0 but got 6
795 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 8 [detache dPara1.firstChild, 0, detachedPara1.firstChild, 0]: first addRange() must not th row exceptions or modify the range it's given
796 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 8 [detache dPara1.firstChild, 0, detachedPara1.firstChild, 0]: first addRange() must result in rangeCount being 1
797 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 8 [detache dPara1.firstChild, 0, detachedPara1.firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints
798 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 8 [detache dPara1.firstChild, 0, detachedPara1.firstChild, 0]: first addRange() must result in the selection's last range being the same object we added
799 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 8 [detache dPara1.firstChild, 0, detachedPara1.firstChild, 0]: modifying the first added ra nge must modify the Selection's last Range
800 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 8 [detache dPara1.firstChild, 0, detachedPara1.firstChild, 0]: modifying the Selection's la st Range must modify the first added Range
801 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 8 [detache dPara1.firstChild, 0, detachedPara1.firstChild, 0]: second addRange() must do no thing
802 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 9 [detache dPara1.firstChild, 0, detachedPara1.firstChild, 1]: first addRange() must not th row exceptions or modify the range it's given
803 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 9 [detache dPara1.firstChild, 0, detachedPara1.firstChild, 1]: first addRange() must result in rangeCount being 1
804 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 9 [detache dPara1.firstChild, 0, detachedPara1.firstChild, 1]: first addRange() must result in the selection's last range having the specified endpoints
805 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 9 [detache dPara1.firstChild, 0, detachedPara1.firstChild, 1]: first addRange() must result in the selection's last range being the same object we added
806 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 9 [detache dPara1.firstChild, 0, detachedPara1.firstChild, 1]: modifying the first added ra nge must modify the Selection's last Range
807 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 9 [detache dPara1.firstChild, 0, detachedPara1.firstChild, 1]: modifying the Selection's la st Range must modify the first added Range
808 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 9 [detache dPara1.firstChild, 0, detachedPara1.firstChild, 1]: second addRange() must do no thing
809 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 10 [detach edPara1.firstChild, 2, detachedPara1.firstChild, 8]: first addRange() must not t hrow exceptions or modify the range it's given
810 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 10 [detach edPara1.firstChild, 2, detachedPara1.firstChild, 8]: first addRange() must resul t in rangeCount being 1
811 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 10 [detach edPara1.firstChild, 2, detachedPara1.firstChild, 8]: first addRange() must resul t in the selection's last range having the specified endpoints
812 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 10 [detach edPara1.firstChild, 2, detachedPara1.firstChild, 8]: first addRange() must resul t in the selection's last range being the same object we added
813 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 10 [detach edPara1.firstChild, 2, detachedPara1.firstChild, 8]: modifying the first added r ange must modify the Selection's last Range
814 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 10 [detach edPara1.firstChild, 2, detachedPara1.firstChild, 8]: modifying the Selection's l ast Range must modify the first added Range
815 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 10 [detach edPara1.firstChild, 2, detachedPara1.firstChild, 8]: second addRange() must do n othing
816 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 11 [foreig nPara1.firstChild, 0, foreignPara1.firstChild, 0]: first addRange() must not thr ow exceptions or modify the range it's given
817 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 11 [foreig nPara1.firstChild, 0, foreignPara1.firstChild, 0]: first addRange() must result in rangeCount being 1
818 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 11 [foreig nPara1.firstChild, 0, foreignPara1.firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints
819 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 11 [foreig nPara1.firstChild, 0, foreignPara1.firstChild, 0]: first addRange() must result in the selection's last range being the same object we added
820 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 11 [foreig nPara1.firstChild, 0, foreignPara1.firstChild, 0]: modifying the first added ran ge must modify the Selection's last Range
821 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 11 [foreig nPara1.firstChild, 0, foreignPara1.firstChild, 0]: modifying the Selection's las t Range must modify the first added Range
822 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 11 [foreig nPara1.firstChild, 0, foreignPara1.firstChild, 0]: second addRange() must do not hing
823 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 12 [foreig nPara1.firstChild, 0, foreignPara1.firstChild, 1]: first addRange() must not thr ow exceptions or modify the range it's given
824 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 12 [foreig nPara1.firstChild, 0, foreignPara1.firstChild, 1]: first addRange() must result in rangeCount being 1
825 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 12 [foreig nPara1.firstChild, 0, foreignPara1.firstChild, 1]: first addRange() must result in the selection's last range having the specified endpoints
826 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 12 [foreig nPara1.firstChild, 0, foreignPara1.firstChild, 1]: first addRange() must result in the selection's last range being the same object we added
827 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 12 [foreig nPara1.firstChild, 0, foreignPara1.firstChild, 1]: modifying the first added ran ge must modify the Selection's last Range
828 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 12 [foreig nPara1.firstChild, 0, foreignPara1.firstChild, 1]: modifying the Selection's las t Range must modify the first added Range
829 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 12 [foreig nPara1.firstChild, 0, foreignPara1.firstChild, 1]: second addRange() must do not hing
830 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 13 [foreig nPara1.firstChild, 2, foreignPara1.firstChild, 8]: first addRange() must not thr ow exceptions or modify the range it's given
831 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 13 [foreig nPara1.firstChild, 2, foreignPara1.firstChild, 8]: first addRange() must result in rangeCount being 1
832 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 13 [foreig nPara1.firstChild, 2, foreignPara1.firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints
833 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 13 [foreig nPara1.firstChild, 2, foreignPara1.firstChild, 8]: first addRange() must result in the selection's last range being the same object we added
834 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 13 [foreig nPara1.firstChild, 2, foreignPara1.firstChild, 8]: modifying the first added ran ge must modify the Selection's last Range
835 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 13 [foreig nPara1.firstChild, 2, foreignPara1.firstChild, 8]: modifying the Selection's las t Range must modify the first added Range
836 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 13 [foreig nPara1.firstChild, 2, foreignPara1.firstChild, 8]: second addRange() must do not hing
837 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 14 [docume nt.documentElement, 0, document.documentElement, 1]: first addRange() must not t hrow exceptions or modify the range it's given
838 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 14 [docume nt.documentElement, 0, document.documentElement, 1]: first addRange() must resul t in rangeCount being 1
839 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 14 [docume nt.documentElement, 0, document.documentElement, 1]: first addRange() must resul t in the selection's last range having the specified endpoints
840 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 14 [docume nt.documentElement, 0, document.documentElement, 1]: first addRange() must resul t in the selection's last range being the same object we added
841 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 14 [docume nt.documentElement, 0, document.documentElement, 1]: modifying the first added r ange must modify the Selection's last Range
842 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 14 [docume nt.documentElement, 0, document.documentElement, 1]: modifying the Selection's l ast Range must modify the first added Range
843 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 14 [docume nt.documentElement, 0, document.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given
844 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 14 [docume nt.documentElement, 0, document.documentElement, 1]: second addRange() must resu lt in rangeCount being 1
845 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 14 [docume nt.documentElement, 0, document.documentElement, 1]: second addRange() must resu lt in the selection's last range having the specified endpoints assert_equals: s tartContainer of the Selection's last Range must match the added Range expected Element node <html><head><title>Selection.addRange() tests</title>
846 <me... but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
847 "
848 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 14 [docume nt.documentElement, 0, document.documentElement, 1]: second addRange() must resu lt in the selection's last range being the same object we added assert_equals: g etRangeAt(rangeCount - 1) must return the same object we added expected object " Selection.addRange() tests
849
850 " but got object ""
851 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 14 [docume nt.documentElement, 0, document.documentElement, 1]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the s econd added Range, startOffset of the Selection's last Range must match the adde d Range expected 0 but got 6
852 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 14 [docume nt.documentElement, 0, document.documentElement, 1]: modifying the Selection's l ast Range must modify the second added Range assert_equals: After second addRang e(), after mutating the Selection's last Range, startOffset of the Selection's l ast Range must match the added Range expected 0 but got 6
853 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 15 [docume nt.documentElement, 0, document.documentElement, 2]: first addRange() must not t hrow exceptions or modify the range it's given
854 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 15 [docume nt.documentElement, 0, document.documentElement, 2]: first addRange() must resul t in rangeCount being 1
855 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 15 [docume nt.documentElement, 0, document.documentElement, 2]: first addRange() must resul t in the selection's last range having the specified endpoints
856 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 15 [docume nt.documentElement, 0, document.documentElement, 2]: first addRange() must resul t in the selection's last range being the same object we added
857 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 15 [docume nt.documentElement, 0, document.documentElement, 2]: modifying the first added r ange must modify the Selection's last Range
858 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 15 [docume nt.documentElement, 0, document.documentElement, 2]: modifying the Selection's l ast Range must modify the first added Range
859 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 15 [docume nt.documentElement, 0, document.documentElement, 2]: second addRange() must not throw exceptions or modify the range it's given
860 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 15 [docume nt.documentElement, 0, document.documentElement, 2]: second addRange() must resu lt in rangeCount being 1
861 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 15 [docume nt.documentElement, 0, document.documentElement, 2]: second addRange() must resu lt in the selection's last range having the specified endpoints assert_equals: s tartContainer of the Selection's last Range must match the added Range expected Element node <html><head><title>Selection.addRange() tests</title>
862 <me... but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
863 "
864 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 15 [docume nt.documentElement, 0, document.documentElement, 2]: second addRange() must resu lt in the selection's last range being the same object we added assert_equals: g etRangeAt(rangeCount - 1) must return the same object we added expected object " Selection.addRange() tests
865
866 Äb̈c̈d̈ëf̈g̈ḧ
867 Ijklmnop
868 QrstuvwxYzabcdefGhijklmn
869
870
871
872
873
874 "use strict";
875
876 testAddRangeSubSet(28, 32);
877 testDiv.style.display = "none";
878 " but got object ""
879 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 15 [docume nt.documentElement, 0, document.documentElement, 2]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the s econd added Range, startOffset of the Selection's last Range must match the adde d Range expected 0 but got 6
880 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 15 [docume nt.documentElement, 0, document.documentElement, 2]: modifying the Selection's l ast Range must modify the second added Range assert_equals: After second addRang e(), after mutating the Selection's last Range, startOffset of the Selection's l ast Range must match the added Range expected 0 but got 6
881 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 16 [docume nt.documentElement, 1, document.documentElement, 2]: first addRange() must not t hrow exceptions or modify the range it's given
882 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 16 [docume nt.documentElement, 1, document.documentElement, 2]: first addRange() must resul t in rangeCount being 1
883 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 16 [docume nt.documentElement, 1, document.documentElement, 2]: first addRange() must resul t in the selection's last range having the specified endpoints
884 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 16 [docume nt.documentElement, 1, document.documentElement, 2]: first addRange() must resul t in the selection's last range being the same object we added
885 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 16 [docume nt.documentElement, 1, document.documentElement, 2]: modifying the first added r ange must modify the Selection's last Range
886 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 16 [docume nt.documentElement, 1, document.documentElement, 2]: modifying the Selection's l ast Range must modify the first added Range
887 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 16 [docume nt.documentElement, 1, document.documentElement, 2]: second addRange() must not throw exceptions or modify the range it's given
888 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 16 [docume nt.documentElement, 1, document.documentElement, 2]: second addRange() must resu lt in rangeCount being 1
889 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 16 [docume nt.documentElement, 1, document.documentElement, 2]: second addRange() must resu lt in the selection's last range having the specified endpoints assert_equals: s tartContainer of the Selection's last Range must match the added Range expected Element node <html><head><title>Selection.addRange() tests</title>
890 <me... but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
891 "
892 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 16 [docume nt.documentElement, 1, document.documentElement, 2]: second addRange() must resu lt in the selection's last range being the same object we added assert_equals: g etRangeAt(rangeCount - 1) must return the same object we added expected object " Äb̈c̈d̈ëf̈g̈ḧ
893 Ijklmnop
894 QrstuvwxYzabcdefGhijklmn
895
896
897
898
899
900 "use strict";
901
902 testAddRangeSubSet(28, 32);
903 testDiv.style.display = "none";
904 " but got object ""
905 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 16 [docume nt.documentElement, 1, document.documentElement, 2]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the s econd added Range, startOffset of the Selection's last Range must match the adde d Range expected 0 but got 6
906 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 16 [docume nt.documentElement, 1, document.documentElement, 2]: modifying the Selection's l ast Range must modify the second added Range assert_equals: After second addRang e(), after mutating the Selection's last Range, startOffset of the Selection's l ast Range must match the added Range expected 0 but got 6
907 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 17 [docume nt.head, 1, document.head, 1]: first addRange() must not throw exceptions or mod ify the range it's given
908 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 17 [docume nt.head, 1, document.head, 1]: first addRange() must result in rangeCount being 1
909 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 17 [docume nt.head, 1, document.head, 1]: first addRange() must result in the selection's l ast range having the specified endpoints
910 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 17 [docume nt.head, 1, document.head, 1]: first addRange() must result in the selection's l ast range being the same object we added
911 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 17 [docume nt.head, 1, document.head, 1]: modifying the first added range must modify the S election's last Range
912 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 17 [docume nt.head, 1, document.head, 1]: modifying the Selection's last Range must modify the first added Range
913 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 17 [docume nt.head, 1, document.head, 1]: second addRange() must not throw exceptions or mo dify the range it's given
914 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 17 [docume nt.head, 1, document.head, 1]: second addRange() must result in rangeCount being 1
915 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 17 [docume nt.head, 1, document.head, 1]: second addRange() must result in the selection's last range having the specified endpoints assert_equals: startContainer of the S election's last Range must match the added Range expected Element node <head><ti tle>Selection.addRange() tests</title>
916 <meta nam... but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
917 "
918 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 17 [docume nt.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object ""
919 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 17 [docume nt.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, sta rtOffset of the Selection's last Range must match the added Range expected 0 but got 6
920 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 17 [docume nt.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range assert_equals: After second addRange(), after mutating th e Selection's last Range, startOffset of the Selection's last Range must match t he added Range expected 0 but got 6
921 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 18 [docume nt.body, 0, document.body, 1]: first addRange() must not throw exceptions or mod ify the range it's given
922 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 18 [docume nt.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1
923 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 18 [docume nt.body, 0, document.body, 1]: first addRange() must result in the selection's l ast range having the specified endpoints
924 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 18 [docume nt.body, 0, document.body, 1]: first addRange() must result in the selection's l ast range being the same object we added
925 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 18 [docume nt.body, 0, document.body, 1]: modifying the first added range must modify the S election's last Range
926 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 18 [docume nt.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range
927 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 18 [docume nt.body, 0, document.body, 1]: second addRange() must not throw exceptions or mo dify the range it's given
928 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 18 [docume nt.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1
929 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 18 [docume nt.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints assert_equals: startContainer of the S election's last Range must match the added Range expected Element node <body><di v id="test"><p id="a">Äb̈c̈d̈ëf̈g̈ḧ
930 </p><p id... but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
931 "
932 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 18 [docume nt.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "Äb̈c̈d̈ëf̈g̈ḧ
933 Ijklmnop
934 QrstuvwxYzabcdefGhijklmn" but got object ""
935 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 18 [docume nt.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, sta rtOffset of the Selection's last Range must match the added Range expected 0 but got 6
936 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 18 [docume nt.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range assert_equals: After second addRange(), after mutating th e Selection's last Range, startOffset of the Selection's last Range must match t he added Range expected 0 but got 6
937 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 19 [foreig nDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must n ot throw exceptions or modify the range it's given
938 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 19 [foreig nDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must r esult in rangeCount being 1
939 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 19 [foreig nDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must r esult in the selection's last range having the specified endpoints
940 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 19 [foreig nDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must r esult in the selection's last range being the same object we added
941 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 19 [foreig nDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first add ed range must modify the Selection's last Range
942 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 19 [foreig nDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection 's last Range must modify the first added Range
943 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 19 [foreig nDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must do nothing
944 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 20 [foreig nDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given
945 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 20 [foreig nDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount be ing 1
946 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 20 [foreig nDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection 's last range having the specified endpoints
947 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 20 [foreig nDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection 's last range being the same object we added
948 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 20 [foreig nDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify t he Selection's last Range
949 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 20 [foreig nDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must mod ify the first added Range
950 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 20 [foreig nDoc.head, 1, foreignDoc.head, 1]: second addRange() must do nothing
951 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 21 [foreig nDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given
952 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 21 [foreig nDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount be ing 1
953 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 21 [foreig nDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection 's last range having the specified endpoints
954 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 21 [foreig nDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection 's last range being the same object we added
955 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 21 [foreig nDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify t he Selection's last Range
956 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 21 [foreig nDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must mod ify the first added Range
957 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 21 [foreig nDoc.body, 0, foreignDoc.body, 0]: second addRange() must do nothing
958 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 22 [paras[ 0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the ra nge it's given
959 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 22 [paras[ 0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1
960 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 22 [paras[ 0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints
961 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 22 [paras[ 0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added
962 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 22 [paras[ 0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range
963 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 22 [paras[ 0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range
964 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 22 [paras[ 0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the r ange it's given
965 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 22 [paras[ 0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1
966 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 22 [paras[ 0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node <p id="a">Äb̈c̈d̈e ̈f̈g̈ḧ
967 </p> but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
968 "
969 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 22 [paras[ 0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added assert_equals: getRangeAt(rangeCount - 1) must r eturn the same object we added expected object "" but got object ""
970 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 22 [paras[ 0], 0, paras[0], 0]: modifying the second added range must modify the Selection' s last Range assert_equals: After mutating the second added Range, startOffset o f the Selection's last Range must match the added Range expected 0 but got 6
971 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 22 [paras[ 0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range assert_equals: After second addRange(), after mutating the Selectio n's last Range, startOffset of the Selection's last Range must match the added R ange expected 0 but got 6
972 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 23 [paras[ 0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the ra nge it's given
973 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 23 [paras[ 0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1
974 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 23 [paras[ 0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints
975 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 23 [paras[ 0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added
976 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 23 [paras[ 0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range
977 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 23 [paras[ 0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range
978 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 23 [paras[ 0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the r ange it's given
979 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 23 [paras[ 0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1
980 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 23 [paras[ 0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node <p id="a">Äb̈c̈d̈e ̈f̈g̈ḧ
981 </p> but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
982 "
983 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 23 [paras[ 0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added assert_equals: getRangeAt(rangeCount - 1) must r eturn the same object we added expected object "Äb̈c̈d̈ëf̈g̈ḧ
984 " but got object ""
985 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 23 [paras[ 0], 0, paras[0], 1]: modifying the second added range must modify the Selection' s last Range assert_equals: After mutating the second added Range, startOffset o f the Selection's last Range must match the added Range expected 0 but got 6
986 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 23 [paras[ 0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range assert_equals: After second addRange(), after mutating the Selectio n's last Range, startOffset of the Selection's last Range must match the added R ange expected 0 but got 6
987 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 24 [detach edPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or mod ify the range it's given
988 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 24 [detach edPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1
989 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 24 [detach edPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's l ast range having the specified endpoints
990 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 24 [detach edPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's l ast range being the same object we added
991 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 24 [detach edPara1, 0, detachedPara1, 0]: modifying the first added range must modify the S election's last Range
992 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 24 [detach edPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range
993 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 24 [detach edPara1, 0, detachedPara1, 0]: second addRange() must do nothing
994 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 25 [detach edPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or mod ify the range it's given
995 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 25 [detach edPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1
996 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 25 [detach edPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's l ast range having the specified endpoints
997 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 25 [detach edPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's l ast range being the same object we added
998 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 25 [detach edPara1, 0, detachedPara1, 1]: modifying the first added range must modify the S election's last Range
999 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 25 [detach edPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range
1000 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 25 [detach edPara1, 0, detachedPara1, 1]: second addRange() must do nothing
1001 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 26 [paras[ 0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw excep tions or modify the range it's given
1002 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 26 [paras[ 0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in range Count being 1
1003 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 26 [paras[ 0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the s election's last range having the specified endpoints
1004 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 26 [paras[ 0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the s election's last range being the same object we added
1005 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 26 [paras[ 0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range
1006 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 26 [paras[ 0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range
1007 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 26 [paras[ 0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exce ptions or modify the range it's given
1008 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 26 [paras[ 0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rang eCount being 1
1009 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 26 [paras[ 0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints assert_equals: startOffset of the Selection's last Range must match the added Range expected 0 but got 6
1010 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 26 [paras[ 0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added assert_equals: getRangeAt( rangeCount - 1) must return the same object we added expected object "Äb̈c̈d̈ë f̈g̈ḧ
1011 " but got object ""
1012 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 26 [paras[ 0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second adde d Range, startOffset of the Selection's last Range must match the added Range ex pected 0 but got 6
1013 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 26 [paras[ 0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6
1014 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 27 [paras[ 0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw excep tions or modify the range it's given
1015 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 27 [paras[ 0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in range Count being 1
1016 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 27 [paras[ 0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the s election's last range having the specified endpoints
1017 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 27 [paras[ 0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the s election's last range being the same object we added
1018 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 27 [paras[ 0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range
1019 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 27 [paras[ 0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range
1020 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 27 [paras[ 0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exce ptions or modify the range it's given
1021 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 27 [paras[ 0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rang eCount being 1
1022 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 27 [paras[ 0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints assert_equals: startOffset of the Selection's last Range must match the added Range expected 0 but got 6
1023 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 27 [paras[ 0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added assert_equals: getRangeAt( rangeCount - 1) must return the same object we added expected object "Äb̈c̈d̈ë f̈g̈ḧ
1024 Ijklmnop" but got object ""
1025 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 27 [paras[ 0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second adde d Range, startOffset of the Selection's last Range must match the added Range ex pected 0 but got 6
1026 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 27 [paras[ 0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6
1027 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 28 [paras[ 0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or mo dify the range it's given
1028 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 28 [paras[ 0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1
1029 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 28 [paras[ 0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints
1030 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 28 [paras[ 0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added
1031 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 28 [paras[ 0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range
1032 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 28 [paras[ 0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range
1033 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 28 [paras[ 0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or m odify the range it's given
1034 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 28 [paras[ 0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount bein g 1
1035 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 28 [paras[ 0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints assert_equals: startOffset of the Sel ection's last Range must match the added Range expected 3 but got 6
1036 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 28 [paras[ 0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "̈c̈d̈ëf̈g̈ḧ
1037 Ijklmnop
1038 QrstuvwxYzabcdef" but got object ""
1039 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 28 [paras[ 0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, st artOffset of the Selection's last Range must match the added Range expected 0 bu t got 6
1040 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 28 [paras[ 0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range assert_equals: After second addRange(), after mutating t he Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6
1041 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 29 [paras[ 0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or mo dify the range it's given
1042 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 29 [paras[ 0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1
1043 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 29 [paras[ 0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints
1044 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 29 [paras[ 0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added
1045 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 29 [paras[ 0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range
1046 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 29 [paras[ 0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range
1047 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 29 [paras[ 0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or m odify the range it's given
1048 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 29 [paras[ 0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount bein g 1
1049 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 29 [paras[ 0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node <p id="a ">Äb̈c̈d̈ëf̈g̈ḧ
1050 </p> but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
1051 "
1052 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 29 [paras[ 0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "Äb̈c̈d" but got obje ct ""
1053 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 29 [paras[ 0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, st artOffset of the Selection's last Range must match the added Range expected 0 bu t got 6
1054 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 29 [paras[ 0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range assert_equals: After second addRange(), after mutating t he Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6
1055 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 30 [testDi v, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the ran ge it's given
1056 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 30 [testDi v, 2, paras[4], 1]: first addRange() must result in rangeCount being 1
1057 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 30 [testDi v, 2, paras[4], 1]: first addRange() must result in the selection's last range h aving the specified endpoints
1058 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 30 [testDi v, 2, paras[4], 1]: first addRange() must result in the selection's last range b eing the same object we added
1059 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 30 [testDi v, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range
1060 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 30 [testDi v, 2, paras[4], 1]: modifying the Selection's last Range must modify the first a dded Range
1061 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 30 [testDi v, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the ra nge it's given
1062 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 30 [testDi v, 2, paras[4], 1]: second addRange() must result in rangeCount being 1
1063 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 30 [testDi v, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node <div id="test"><p id ="a">Äb̈c̈d̈ëf̈g̈ḧ
1064 </p><p id="b" s... but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
1065 "
1066 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 30 [testDi v, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added assert_equals: getRangeAt(rangeCount - 1) must re turn the same object we added expected object "QrstuvwxYzabcdefGhijklmn" but got object ""
1067 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 30 [testDi v, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6
1068 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 30 [testDi v, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range assert_equals: After second addRange(), after mutating the Selection 's last Range, startOffset of the Selection's last Range must match the added Ra nge expected 0 but got 6
1069 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 31 [testDi v, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or mod ify the range it's given
1070 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 31 [testDi v, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1
1071 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 31 [testDi v, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's l ast range having the specified endpoints
1072 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 31 [testDi v, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's l ast range being the same object we added
1073 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 31 [testDi v, 1, paras[2].firstChild, 5]: modifying the first added range must modify the S election's last Range
1074 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 31 [testDi v, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range
1075 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 31 [testDi v, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or mo dify the range it's given
1076 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 31 [testDi v, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1
1077 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 31 [testDi v, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints assert_equals: startContainer of the S election's last Range must match the added Range expected Element node <div id=" test"><p id="a">Äb̈c̈d̈ëf̈g̈ḧ
1078 </p><p id="b" s... but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
1079 "
1080 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 31 [testDi v, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "Ijklmnop
1081 Qrstu" but got object ""
1082 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 31 [testDi v, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, sta rtOffset of the Selection's last Range must match the added Range expected 0 but got 6
1083 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 31 [testDi v, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range assert_equals: After second addRange(), after mutating th e Selection's last Range, startOffset of the Selection's last Range must match t he added Range expected 0 but got 6
1084 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 32 [docume nt.documentElement, 1, document.body, 0]: first addRange() must not throw except ions or modify the range it's given
1085 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 32 [docume nt.documentElement, 1, document.body, 0]: first addRange() must result in rangeC ount being 1
1086 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 32 [docume nt.documentElement, 1, document.body, 0]: first addRange() must result in the se lection's last range having the specified endpoints
1087 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 32 [docume nt.documentElement, 1, document.body, 0]: first addRange() must result in the se lection's last range being the same object we added
1088 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 32 [docume nt.documentElement, 1, document.body, 0]: modifying the first added range must m odify the Selection's last Range
1089 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 32 [docume nt.documentElement, 1, document.body, 0]: modifying the Selection's last Range m ust modify the first added Range
1090 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 32 [docume nt.documentElement, 1, document.body, 0]: second addRange() must not throw excep tions or modify the range it's given
1091 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 32 [docume nt.documentElement, 1, document.body, 0]: second addRange() must result in range Count being 1
1092 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 32 [docume nt.documentElement, 1, document.body, 0]: second addRange() must result in the s election's last range having the specified endpoints assert_equals: startContain er of the Selection's last Range must match the added Range expected Element nod e <html><head><title>Selection.addRange() tests</title>
1093 <me... but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
1094 "
1095 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 32 [docume nt.documentElement, 1, document.body, 0]: second addRange() must result in the s election's last range being the same object we added assert_equals: getRangeAt(r angeCount - 1) must return the same object we added expected object "" but got o bject ""
1096 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 32 [docume nt.documentElement, 1, document.body, 0]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range exp ected 0 but got 6
1097 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 32 [docume nt.documentElement, 1, document.body, 0]: modifying the Selection's last Range m ust modify the second added Range assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range m ust match the added Range expected 0 but got 6
1098 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 33 [foreig nDoc.documentElement, 1, foreignDoc.body, 0]: first addRange() must not throw ex ceptions or modify the range it's given
1099 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 33 [foreig nDoc.documentElement, 1, foreignDoc.body, 0]: first addRange() must result in ra ngeCount being 1
1100 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 33 [foreig nDoc.documentElement, 1, foreignDoc.body, 0]: first addRange() must result in th e selection's last range having the specified endpoints
1101 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 33 [foreig nDoc.documentElement, 1, foreignDoc.body, 0]: first addRange() must result in th e selection's last range being the same object we added
1102 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 33 [foreig nDoc.documentElement, 1, foreignDoc.body, 0]: modifying the first added range mu st modify the Selection's last Range
1103 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 33 [foreig nDoc.documentElement, 1, foreignDoc.body, 0]: modifying the Selection's last Ran ge must modify the first added Range
1104 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 33 [foreig nDoc.documentElement, 1, foreignDoc.body, 0]: second addRange() must do nothing
1105 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 34 [docume nt, 0, document, 1]: first addRange() must not throw exceptions or modify the ra nge it's given
1106 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 34 [docume nt, 0, document, 1]: first addRange() must result in rangeCount being 1
1107 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 34 [docume nt, 0, document, 1]: first addRange() must result in the selection's last range having the specified endpoints
1108 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 34 [docume nt, 0, document, 1]: first addRange() must result in the selection's last range being the same object we added
1109 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 34 [docume nt, 0, document, 1]: modifying the first added range must modify the Selection's last Range
1110 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 34 [docume nt, 0, document, 1]: modifying the Selection's last Range must modify the first added Range
1111 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 34 [docume nt, 0, document, 1]: second addRange() must not throw exceptions or modify the r ange it's given
1112 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 34 [docume nt, 0, document, 1]: second addRange() must result in rangeCount being 1
1113 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 34 [docume nt, 0, document, 1]: second addRange() must result in the selection's last range having the specified endpoints assert_equals: startContainer of the Selection's last Range must match the added Range expected Document node with 2 children bu t got Text node "Äb̈c̈d̈ëf̈g̈ḧ
1114 "
1115 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 34 [docume nt, 0, document, 1]: second addRange() must result in the selection's last range being the same object we added assert_equals: getRangeAt(rangeCount - 1) must r eturn the same object we added expected object "" but got object ""
1116 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 34 [docume nt, 0, document, 1]: modifying the second added range must modify the Selection' s last Range assert_equals: After mutating the second added Range, startOffset o f the Selection's last Range must match the added Range expected 0 but got 6
1117 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 34 [docume nt, 0, document, 1]: modifying the Selection's last Range must modify the second added Range assert_equals: After second addRange(), after mutating the Selectio n's last Range, startOffset of the Selection's last Range must match the added R ange expected 0 but got 6
1118 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 35 [docume nt, 0, document, 2]: first addRange() must not throw exceptions or modify the ra nge it's given
1119 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 35 [docume nt, 0, document, 2]: first addRange() must result in rangeCount being 1
1120 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 35 [docume nt, 0, document, 2]: first addRange() must result in the selection's last range having the specified endpoints
1121 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 35 [docume nt, 0, document, 2]: first addRange() must result in the selection's last range being the same object we added
1122 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 35 [docume nt, 0, document, 2]: modifying the first added range must modify the Selection's last Range
1123 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 35 [docume nt, 0, document, 2]: modifying the Selection's last Range must modify the first added Range
1124 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 35 [docume nt, 0, document, 2]: second addRange() must not throw exceptions or modify the r ange it's given
1125 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 35 [docume nt, 0, document, 2]: second addRange() must result in rangeCount being 1
1126 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 35 [docume nt, 0, document, 2]: second addRange() must result in the selection's last range having the specified endpoints assert_equals: startContainer of the Selection's last Range must match the added Range expected Document node with 2 children bu t got Text node "Äb̈c̈d̈ëf̈g̈ḧ
1127 "
1128 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 35 [docume nt, 0, document, 2]: second addRange() must result in the selection's last range being the same object we added assert_equals: getRangeAt(rangeCount - 1) must r eturn the same object we added expected object "Selection.addRange() tests
1129
1130 Äb̈c̈d̈ëf̈g̈ḧ
1131 Ijklmnop
1132 QrstuvwxYzabcdefGhijklmn
1133
1134
1135
1136
1137
1138 "use strict";
1139
1140 testAddRangeSubSet(28, 32);
1141 testDiv.style.display = "none";
1142 " but got object ""
1143 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 35 [docume nt, 0, document, 2]: modifying the second added range must modify the Selection' s last Range assert_equals: After mutating the second added Range, startOffset o f the Selection's last Range must match the added Range expected 0 but got 6
1144 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 35 [docume nt, 0, document, 2]: modifying the Selection's last Range must modify the second added Range assert_equals: After second addRange(), after mutating the Selectio n's last Range, startOffset of the Selection's last Range must match the added R ange expected 0 but got 6
1145 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 36 [docume nt, 1, document, 2]: first addRange() must not throw exceptions or modify the ra nge it's given
1146 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 36 [docume nt, 1, document, 2]: first addRange() must result in rangeCount being 1
1147 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 36 [docume nt, 1, document, 2]: first addRange() must result in the selection's last range having the specified endpoints
1148 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 36 [docume nt, 1, document, 2]: first addRange() must result in the selection's last range being the same object we added
1149 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 36 [docume nt, 1, document, 2]: modifying the first added range must modify the Selection's last Range
1150 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 36 [docume nt, 1, document, 2]: modifying the Selection's last Range must modify the first added Range
1151 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 36 [docume nt, 1, document, 2]: second addRange() must not throw exceptions or modify the r ange it's given
1152 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 36 [docume nt, 1, document, 2]: second addRange() must result in rangeCount being 1
1153 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 36 [docume nt, 1, document, 2]: second addRange() must result in the selection's last range having the specified endpoints assert_equals: startContainer of the Selection's last Range must match the added Range expected Document node with 2 children bu t got Text node "Äb̈c̈d̈ëf̈g̈ḧ
1154 "
1155 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 36 [docume nt, 1, document, 2]: second addRange() must result in the selection's last range being the same object we added assert_equals: getRangeAt(rangeCount - 1) must r eturn the same object we added expected object "Selection.addRange() tests
1156
1157 Äb̈c̈d̈ëf̈g̈ḧ
1158 Ijklmnop
1159 QrstuvwxYzabcdefGhijklmn
1160
1161
1162
1163
1164
1165 "use strict";
1166
1167 testAddRangeSubSet(28, 32);
1168 testDiv.style.display = "none";
1169 " but got object ""
1170 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 36 [docume nt, 1, document, 2]: modifying the second added range must modify the Selection' s last Range assert_equals: After mutating the second added Range, startOffset o f the Selection's last Range must match the added Range expected 0 but got 6
1171 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 36 [docume nt, 1, document, 2]: modifying the Selection's last Range must modify the second added Range assert_equals: After second addRange(), after mutating the Selectio n's last Range, startOffset of the Selection's last Range must match the added R ange expected 0 but got 6
1172 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 37 [testDi v, 0, comment, 5]: first addRange() must not throw exceptions or modify the rang e it's given
1173 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 37 [testDi v, 0, comment, 5]: first addRange() must result in rangeCount being 1
1174 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 37 [testDi v, 0, comment, 5]: first addRange() must result in the selection's last range ha ving the specified endpoints
1175 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 37 [testDi v, 0, comment, 5]: first addRange() must result in the selection's last range be ing the same object we added
1176 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 37 [testDi v, 0, comment, 5]: modifying the first added range must modify the Selection's l ast Range
1177 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 37 [testDi v, 0, comment, 5]: modifying the Selection's last Range must modify the first ad ded Range
1178 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 37 [testDi v, 0, comment, 5]: second addRange() must not throw exceptions or modify the ran ge it's given
1179 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 37 [testDi v, 0, comment, 5]: second addRange() must result in rangeCount being 1
1180 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 37 [testDi v, 0, comment, 5]: second addRange() must result in the selection's last range h aving the specified endpoints assert_equals: startContainer of the Selection's l ast Range must match the added Range expected Element node <div id="test"><p id= "a">Äb̈c̈d̈ëf̈g̈ḧ
1181 </p><p id="b" s... but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
1182 "
1183 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 37 [testDi v, 0, comment, 5]: second addRange() must result in the selection's last range b eing the same object we added assert_equals: getRangeAt(rangeCount - 1) must ret urn the same object we added expected object "Äb̈c̈d̈ëf̈g̈ḧ
1184 Ijklmnop
1185 QrstuvwxYzabcdefGhijklmn" but got object ""
1186 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 37 [testDi v, 0, comment, 5]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6
1187 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 37 [testDi v, 0, comment, 5]: modifying the Selection's last Range must modify the second a dded Range assert_equals: After second addRange(), after mutating the Selection' s last Range, startOffset of the Selection's last Range must match the added Ran ge expected 0 but got 6
1188 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 38 [paras[ 2].firstChild, 4, comment, 2]: first addRange() must not throw exceptions or mod ify the range it's given
1189 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 38 [paras[ 2].firstChild, 4, comment, 2]: first addRange() must result in rangeCount being 1
1190 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 38 [paras[ 2].firstChild, 4, comment, 2]: first addRange() must result in the selection's l ast range having the specified endpoints
1191 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 38 [paras[ 2].firstChild, 4, comment, 2]: first addRange() must result in the selection's l ast range being the same object we added
1192 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 38 [paras[ 2].firstChild, 4, comment, 2]: modifying the first added range must modify the S election's last Range
1193 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 38 [paras[ 2].firstChild, 4, comment, 2]: modifying the Selection's last Range must modify the first added Range
1194 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 38 [paras[ 2].firstChild, 4, comment, 2]: second addRange() must not throw exceptions or mo dify the range it's given
1195 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 38 [paras[ 2].firstChild, 4, comment, 2]: second addRange() must result in rangeCount being 1
1196 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 38 [paras[ 2].firstChild, 4, comment, 2]: second addRange() must result in the selection's last range having the specified endpoints assert_equals: startContainer of the S election's last Range must match the added Range expected Text node "Qrstuvwx" b ut got Text node "Äb̈c̈d̈ëf̈g̈ḧ
1197 "
1198 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 38 [paras[ 2].firstChild, 4, comment, 2]: second addRange() must result in the selection's last range being the same object we added assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "uvwxYzabcdefGhijklmn" but got object ""
1199 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 38 [paras[ 2].firstChild, 4, comment, 2]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, sta rtOffset of the Selection's last Range must match the added Range expected 0 but got 6
1200 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 38 [paras[ 2].firstChild, 4, comment, 2]: modifying the Selection's last Range must modify the second added Range assert_equals: After second addRange(), after mutating th e Selection's last Range, startOffset of the Selection's last Range must match t he added Range expected 0 but got 6
1201 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 39 [paras[ 3], 1, comment, 8]: first addRange() must not throw exceptions or modify the ran ge it's given
1202 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 39 [paras[ 3], 1, comment, 8]: first addRange() must result in rangeCount being 1
1203 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 39 [paras[ 3], 1, comment, 8]: first addRange() must result in the selection's last range h aving the specified endpoints
1204 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 39 [paras[ 3], 1, comment, 8]: first addRange() must result in the selection's last range b eing the same object we added
1205 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 39 [paras[ 3], 1, comment, 8]: modifying the first added range must modify the Selection's last Range
1206 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 39 [paras[ 3], 1, comment, 8]: modifying the Selection's last Range must modify the first a dded Range
1207 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 39 [paras[ 3], 1, comment, 8]: second addRange() must not throw exceptions or modify the ra nge it's given
1208 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 39 [paras[ 3], 1, comment, 8]: second addRange() must result in rangeCount being 1
1209 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 39 [paras[ 3], 1, comment, 8]: second addRange() must result in the selection's last range having the specified endpoints assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node <p id="d" style="dis play:none">Yzabcdef</p> but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
1210 "
1211 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 39 [paras[ 3], 1, comment, 8]: second addRange() must result in the selection's last range being the same object we added assert_equals: getRangeAt(rangeCount - 1) must re turn the same object we added expected object "Ghijklmn" but got object ""
1212 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 39 [paras[ 3], 1, comment, 8]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6
1213 FAIL Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 39 [paras[ 3], 1, comment, 8]: modifying the Selection's last Range must modify the second added Range assert_equals: After second addRange(), after mutating the Selection 's last Range, startOffset of the Selection's last Range must match the added Ra nge expected 0 but got 6
1214 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 40 [foreig nDoc, 0, foreignDoc, 0]: first addRange() must not throw exceptions or modify th e range it's given
1215 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 40 [foreig nDoc, 0, foreignDoc, 0]: first addRange() must result in rangeCount being 1
1216 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 40 [foreig nDoc, 0, foreignDoc, 0]: first addRange() must result in the selection's last ra nge having the specified endpoints
1217 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 40 [foreig nDoc, 0, foreignDoc, 0]: first addRange() must result in the selection's last ra nge being the same object we added
1218 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 40 [foreig nDoc, 0, foreignDoc, 0]: modifying the first added range must modify the Selecti on's last Range
1219 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 40 [foreig nDoc, 0, foreignDoc, 0]: modifying the Selection's last Range must modify the fi rst added Range
1220 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 40 [foreig nDoc, 0, foreignDoc, 0]: second addRange() must do nothing
1221 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 41 [foreig nDoc, 1, foreignComment, 2]: first addRange() must not throw exceptions or modif y the range it's given
1222 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 41 [foreig nDoc, 1, foreignComment, 2]: first addRange() must result in rangeCount being 1
1223 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 41 [foreig nDoc, 1, foreignComment, 2]: first addRange() must result in the selection's las t range having the specified endpoints
1224 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 41 [foreig nDoc, 1, foreignComment, 2]: first addRange() must result in the selection's las t range being the same object we added
1225 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 41 [foreig nDoc, 1, foreignComment, 2]: modifying the first added range must modify the Sel ection's last Range
1226 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 41 [foreig nDoc, 1, foreignComment, 2]: modifying the Selection's last Range must modify th e first added Range
1227 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 41 [foreig nDoc, 1, foreignComment, 2]: second addRange() must do nothing
1228 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 42 [foreig nDoc.body, 0, foreignTextNode, 36]: first addRange() must not throw exceptions o r modify the range it's given
1229 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 42 [foreig nDoc.body, 0, foreignTextNode, 36]: first addRange() must result in rangeCount b eing 1
1230 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 42 [foreig nDoc.body, 0, foreignTextNode, 36]: first addRange() must result in the selectio n's last range having the specified endpoints
1231 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 42 [foreig nDoc.body, 0, foreignTextNode, 36]: first addRange() must result in the selectio n's last range being the same object we added
1232 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 42 [foreig nDoc.body, 0, foreignTextNode, 36]: modifying the first added range must modify the Selection's last Range
1233 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 42 [foreig nDoc.body, 0, foreignTextNode, 36]: modifying the Selection's last Range must mo dify the first added Range
1234 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 42 [foreig nDoc.body, 0, foreignTextNode, 36]: second addRange() must do nothing
1235 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 43 [xmlDoc , 0, xmlDoc, 0]: first addRange() must not throw exceptions or modify the range it's given
1236 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 43 [xmlDoc , 0, xmlDoc, 0]: first addRange() must result in rangeCount being 1
1237 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 43 [xmlDoc , 0, xmlDoc, 0]: first addRange() must result in the selection's last range havi ng the specified endpoints
1238 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 43 [xmlDoc , 0, xmlDoc, 0]: first addRange() must result in the selection's last range bein g the same object we added
1239 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 43 [xmlDoc , 0, xmlDoc, 0]: modifying the first added range must modify the Selection's las t Range
1240 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 43 [xmlDoc , 0, xmlDoc, 0]: modifying the Selection's last Range must modify the first adde d Range
1241 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 43 [xmlDoc , 0, xmlDoc, 0]: second addRange() must do nothing
1242 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 44 [xmlDoc , 1, xmlComment, 0]: first addRange() must not throw exceptions or modify the ra nge it's given
1243 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 44 [xmlDoc , 1, xmlComment, 0]: first addRange() must result in rangeCount being 1
1244 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 44 [xmlDoc , 1, xmlComment, 0]: first addRange() must result in the selection's last range having the specified endpoints
1245 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 44 [xmlDoc , 1, xmlComment, 0]: first addRange() must result in the selection's last range being the same object we added
1246 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 44 [xmlDoc , 1, xmlComment, 0]: modifying the first added range must modify the Selection's last Range
1247 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 44 [xmlDoc , 1, xmlComment, 0]: modifying the Selection's last Range must modify the first added Range
1248 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 44 [xmlDoc , 1, xmlComment, 0]: second addRange() must do nothing
1249 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 45 [detach edTextNode, 0, detachedTextNode, 8]: first addRange() must not throw exceptions or modify the range it's given
1250 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 45 [detach edTextNode, 0, detachedTextNode, 8]: first addRange() must result in rangeCount being 1
1251 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 45 [detach edTextNode, 0, detachedTextNode, 8]: first addRange() must result in the selecti on's last range having the specified endpoints
1252 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 45 [detach edTextNode, 0, detachedTextNode, 8]: first addRange() must result in the selecti on's last range being the same object we added
1253 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 45 [detach edTextNode, 0, detachedTextNode, 8]: modifying the first added range must modify the Selection's last Range
1254 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 45 [detach edTextNode, 0, detachedTextNode, 8]: modifying the Selection's last Range must m odify the first added Range
1255 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 45 [detach edTextNode, 0, detachedTextNode, 8]: second addRange() must do nothing
1256 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 46 [detach edForeignTextNode, 7, detachedForeignTextNode, 7]: first addRange() must not thr ow exceptions or modify the range it's given
1257 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 46 [detach edForeignTextNode, 7, detachedForeignTextNode, 7]: first addRange() must result in rangeCount being 1
1258 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 46 [detach edForeignTextNode, 7, detachedForeignTextNode, 7]: first addRange() must result in the selection's last range having the specified endpoints
1259 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 46 [detach edForeignTextNode, 7, detachedForeignTextNode, 7]: first addRange() must result in the selection's last range being the same object we added
1260 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 46 [detach edForeignTextNode, 7, detachedForeignTextNode, 7]: modifying the first added ran ge must modify the Selection's last Range
1261 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 46 [detach edForeignTextNode, 7, detachedForeignTextNode, 7]: modifying the Selection's las t Range must modify the first added Range
1262 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 46 [detach edForeignTextNode, 7, detachedForeignTextNode, 7]: second addRange() must do not hing
1263 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 47 [detach edForeignTextNode, 0, detachedForeignTextNode, 8]: first addRange() must not thr ow exceptions or modify the range it's given
1264 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 47 [detach edForeignTextNode, 0, detachedForeignTextNode, 8]: first addRange() must result in rangeCount being 1
1265 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 47 [detach edForeignTextNode, 0, detachedForeignTextNode, 8]: first addRange() must result in the selection's last range having the specified endpoints
1266 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 47 [detach edForeignTextNode, 0, detachedForeignTextNode, 8]: first addRange() must result in the selection's last range being the same object we added
1267 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 47 [detach edForeignTextNode, 0, detachedForeignTextNode, 8]: modifying the first added ran ge must modify the Selection's last Range
1268 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 47 [detach edForeignTextNode, 0, detachedForeignTextNode, 8]: modifying the Selection's las t Range must modify the first added Range
1269 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 47 [detach edForeignTextNode, 0, detachedForeignTextNode, 8]: second addRange() must do not hing
1270 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 48 [detach edXmlTextNode, 7, detachedXmlTextNode, 7]: first addRange() must not throw excep tions or modify the range it's given
1271 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 48 [detach edXmlTextNode, 7, detachedXmlTextNode, 7]: first addRange() must result in range Count being 1
1272 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 48 [detach edXmlTextNode, 7, detachedXmlTextNode, 7]: first addRange() must result in the s election's last range having the specified endpoints
1273 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 48 [detach edXmlTextNode, 7, detachedXmlTextNode, 7]: first addRange() must result in the s election's last range being the same object we added
1274 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 48 [detach edXmlTextNode, 7, detachedXmlTextNode, 7]: modifying the first added range must modify the Selection's last Range
1275 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 48 [detach edXmlTextNode, 7, detachedXmlTextNode, 7]: modifying the Selection's last Range must modify the first added Range
1276 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 48 [detach edXmlTextNode, 7, detachedXmlTextNode, 7]: second addRange() must do nothing
1277 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 49 [detach edXmlTextNode, 0, detachedXmlTextNode, 8]: first addRange() must not throw excep tions or modify the range it's given
1278 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 49 [detach edXmlTextNode, 0, detachedXmlTextNode, 8]: first addRange() must result in range Count being 1
1279 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 49 [detach edXmlTextNode, 0, detachedXmlTextNode, 8]: first addRange() must result in the s election's last range having the specified endpoints
1280 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 49 [detach edXmlTextNode, 0, detachedXmlTextNode, 8]: first addRange() must result in the s election's last range being the same object we added
1281 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 49 [detach edXmlTextNode, 0, detachedXmlTextNode, 8]: modifying the first added range must modify the Selection's last Range
1282 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 49 [detach edXmlTextNode, 0, detachedXmlTextNode, 8]: modifying the Selection's last Range must modify the first added Range
1283 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 49 [detach edXmlTextNode, 0, detachedXmlTextNode, 8]: second addRange() must do nothing
1284 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 50 [detach edComment, 3, detachedComment, 4]: first addRange() must not throw exceptions or modify the range it's given
1285 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 50 [detach edComment, 3, detachedComment, 4]: first addRange() must result in rangeCount be ing 1
1286 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 50 [detach edComment, 3, detachedComment, 4]: first addRange() must result in the selection 's last range having the specified endpoints
1287 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 50 [detach edComment, 3, detachedComment, 4]: first addRange() must result in the selection 's last range being the same object we added
1288 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 50 [detach edComment, 3, detachedComment, 4]: modifying the first added range must modify t he Selection's last Range
1289 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 50 [detach edComment, 3, detachedComment, 4]: modifying the Selection's last Range must mod ify the first added Range
1290 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 50 [detach edComment, 3, detachedComment, 4]: second addRange() must do nothing
1291 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 51 [detach edComment, 5, detachedComment, 5]: first addRange() must not throw exceptions or modify the range it's given
1292 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 51 [detach edComment, 5, detachedComment, 5]: first addRange() must result in rangeCount be ing 1
1293 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 51 [detach edComment, 5, detachedComment, 5]: first addRange() must result in the selection 's last range having the specified endpoints
1294 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 51 [detach edComment, 5, detachedComment, 5]: first addRange() must result in the selection 's last range being the same object we added
1295 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 51 [detach edComment, 5, detachedComment, 5]: modifying the first added range must modify t he Selection's last Range
1296 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 51 [detach edComment, 5, detachedComment, 5]: modifying the Selection's last Range must mod ify the first added Range
1297 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 51 [detach edComment, 5, detachedComment, 5]: second addRange() must do nothing
1298 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 52 [detach edForeignComment, 0, detachedForeignComment, 1]: first addRange() must not throw exceptions or modify the range it's given
1299 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 52 [detach edForeignComment, 0, detachedForeignComment, 1]: first addRange() must result in rangeCount being 1
1300 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 52 [detach edForeignComment, 0, detachedForeignComment, 1]: first addRange() must result in the selection's last range having the specified endpoints
1301 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 52 [detach edForeignComment, 0, detachedForeignComment, 1]: first addRange() must result in the selection's last range being the same object we added
1302 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 52 [detach edForeignComment, 0, detachedForeignComment, 1]: modifying the first added range must modify the Selection's last Range
1303 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 52 [detach edForeignComment, 0, detachedForeignComment, 1]: modifying the Selection's last Range must modify the first added Range
1304 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 52 [detach edForeignComment, 0, detachedForeignComment, 1]: second addRange() must do nothi ng
1305 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 53 [detach edForeignComment, 4, detachedForeignComment, 4]: first addRange() must not throw exceptions or modify the range it's given
1306 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 53 [detach edForeignComment, 4, detachedForeignComment, 4]: first addRange() must result in rangeCount being 1
1307 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 53 [detach edForeignComment, 4, detachedForeignComment, 4]: first addRange() must result in the selection's last range having the specified endpoints
1308 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 53 [detach edForeignComment, 4, detachedForeignComment, 4]: first addRange() must result in the selection's last range being the same object we added
1309 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 53 [detach edForeignComment, 4, detachedForeignComment, 4]: modifying the first added range must modify the Selection's last Range
1310 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 53 [detach edForeignComment, 4, detachedForeignComment, 4]: modifying the Selection's last Range must modify the first added Range
1311 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 53 [detach edForeignComment, 4, detachedForeignComment, 4]: second addRange() must do nothi ng
1312 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 54 [detach edXmlComment, 2, detachedXmlComment, 6]: first addRange() must not throw excepti ons or modify the range it's given
1313 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 54 [detach edXmlComment, 2, detachedXmlComment, 6]: first addRange() must result in rangeCo unt being 1
1314 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 54 [detach edXmlComment, 2, detachedXmlComment, 6]: first addRange() must result in the sel ection's last range having the specified endpoints
1315 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 54 [detach edXmlComment, 2, detachedXmlComment, 6]: first addRange() must result in the sel ection's last range being the same object we added
1316 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 54 [detach edXmlComment, 2, detachedXmlComment, 6]: modifying the first added range must mo dify the Selection's last Range
1317 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 54 [detach edXmlComment, 2, detachedXmlComment, 6]: modifying the Selection's last Range mu st modify the first added Range
1318 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 54 [detach edXmlComment, 2, detachedXmlComment, 6]: second addRange() must do nothing
1319 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 55 [docfra g, 0, docfrag, 0]: first addRange() must not throw exceptions or modify the rang e it's given
1320 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 55 [docfra g, 0, docfrag, 0]: first addRange() must result in rangeCount being 1
1321 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 55 [docfra g, 0, docfrag, 0]: first addRange() must result in the selection's last range ha ving the specified endpoints
1322 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 55 [docfra g, 0, docfrag, 0]: first addRange() must result in the selection's last range be ing the same object we added
1323 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 55 [docfra g, 0, docfrag, 0]: modifying the first added range must modify the Selection's l ast Range
1324 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 55 [docfra g, 0, docfrag, 0]: modifying the Selection's last Range must modify the first ad ded Range
1325 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 55 [docfra g, 0, docfrag, 0]: second addRange() must do nothing
1326 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 56 [foreig nDocfrag, 0, foreignDocfrag, 0]: first addRange() must not throw exceptions or m odify the range it's given
1327 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 56 [foreig nDocfrag, 0, foreignDocfrag, 0]: first addRange() must result in rangeCount bein g 1
1328 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 56 [foreig nDocfrag, 0, foreignDocfrag, 0]: first addRange() must result in the selection's last range having the specified endpoints
1329 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 56 [foreig nDocfrag, 0, foreignDocfrag, 0]: first addRange() must result in the selection's last range being the same object we added
1330 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 56 [foreig nDocfrag, 0, foreignDocfrag, 0]: modifying the first added range must modify the Selection's last Range
1331 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 56 [foreig nDocfrag, 0, foreignDocfrag, 0]: modifying the Selection's last Range must modif y the first added Range
1332 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 56 [foreig nDocfrag, 0, foreignDocfrag, 0]: second addRange() must do nothing
1333 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 57 [xmlDoc frag, 0, xmlDocfrag, 0]: first addRange() must not throw exceptions or modify th e range it's given
1334 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 57 [xmlDoc frag, 0, xmlDocfrag, 0]: first addRange() must result in rangeCount being 1
1335 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 57 [xmlDoc frag, 0, xmlDocfrag, 0]: first addRange() must result in the selection's last ra nge having the specified endpoints
1336 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 57 [xmlDoc frag, 0, xmlDocfrag, 0]: first addRange() must result in the selection's last ra nge being the same object we added
1337 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 57 [xmlDoc frag, 0, xmlDocfrag, 0]: modifying the first added range must modify the Selecti on's last Range
1338 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 57 [xmlDoc frag, 0, xmlDocfrag, 0]: modifying the Selection's last Range must modify the fi rst added Range
1339 PASS Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 57 [xmlDoc frag, 0, xmlDocfrag, 0]: second addRange() must do nothing
1340 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 0 [paras[0].firstChild , 0, paras[0].firstChild, 0]: first addRange() must not throw exceptions or modi fy the range it's given
1341 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 0 [paras[0].firstChild , 0, paras[0].firstChild, 0]: first addRange() must result in rangeCount being 1
1342 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 0 [paras[0].firstChild , 0, paras[0].firstChild, 0]: first addRange() must result in the selection's la st range having the specified endpoints
1343 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 0 [paras[0].firstChild , 0, paras[0].firstChild, 0]: first addRange() must result in the selection's la st range being the same object we added
1344 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 0 [paras[0].firstChild , 0, paras[0].firstChild, 0]: modifying the first added range must modify the Se lection's last Range
1345 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 0 [paras[0].firstChild , 0, paras[0].firstChild, 0]: modifying the Selection's last Range must modify t he first added Range
1346 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 0 [paras[0].firstChild , 0, paras[0].firstChild, 0]: second addRange() must not throw exceptions or mod ify the range it's given
1347 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 0 [paras[0].firstChild , 0, paras[0].firstChild, 0]: second addRange() must result in rangeCount being 1
1348 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 0 [paras[0].firstChild , 0, paras[0].firstChild, 0]: second addRange() must result in the selection's l ast range having the specified endpoints assert_equals: startOffset of the Selec tion's last Range must match the added Range expected 0 but got 6
1349 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 0 [paras[0].firstChild , 0, paras[0].firstChild, 0]: second addRange() must result in the selection's l ast range being the same object we added assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object ""
1350 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 0 [paras[0].firstChild , 0, paras[0].firstChild, 0]: modifying the second added range must modify the S election's last Range assert_equals: After mutating the second added Range, star tOffset of the Selection's last Range must match the added Range expected 0 but got 6
1351 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 0 [paras[0].firstChild , 0, paras[0].firstChild, 0]: modifying the Selection's last Range must modify t he second added Range assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match th e added Range expected 0 but got 6
1352 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 1 [paras[0].firstChild , 0, paras[0].firstChild, 1]: first addRange() must not throw exceptions or modi fy the range it's given
1353 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 1 [paras[0].firstChild , 0, paras[0].firstChild, 1]: first addRange() must result in rangeCount being 1
1354 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 1 [paras[0].firstChild , 0, paras[0].firstChild, 1]: first addRange() must result in the selection's la st range having the specified endpoints
1355 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 1 [paras[0].firstChild , 0, paras[0].firstChild, 1]: first addRange() must result in the selection's la st range being the same object we added
1356 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 1 [paras[0].firstChild , 0, paras[0].firstChild, 1]: modifying the first added range must modify the Se lection's last Range
1357 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 1 [paras[0].firstChild , 0, paras[0].firstChild, 1]: modifying the Selection's last Range must modify t he first added Range
1358 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 1 [paras[0].firstChild , 0, paras[0].firstChild, 1]: second addRange() must not throw exceptions or mod ify the range it's given
1359 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 1 [paras[0].firstChild , 0, paras[0].firstChild, 1]: second addRange() must result in rangeCount being 1
1360 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 1 [paras[0].firstChild , 0, paras[0].firstChild, 1]: second addRange() must result in the selection's l ast range having the specified endpoints assert_equals: startOffset of the Selec tion's last Range must match the added Range expected 0 but got 6
1361 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 1 [paras[0].firstChild , 0, paras[0].firstChild, 1]: second addRange() must result in the selection's l ast range being the same object we added assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "A" but got object ""
1362 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 1 [paras[0].firstChild , 0, paras[0].firstChild, 1]: modifying the second added range must modify the S election's last Range assert_equals: After mutating the second added Range, star tOffset of the Selection's last Range must match the added Range expected 0 but got 6
1363 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 1 [paras[0].firstChild , 0, paras[0].firstChild, 1]: modifying the Selection's last Range must modify t he second added Range assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match th e added Range expected 0 but got 6
1364 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 2 [paras[0].firstChild , 2, paras[0].firstChild, 8]: first addRange() must not throw exceptions or modi fy the range it's given
1365 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 2 [paras[0].firstChild , 2, paras[0].firstChild, 8]: first addRange() must result in rangeCount being 1
1366 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 2 [paras[0].firstChild , 2, paras[0].firstChild, 8]: first addRange() must result in the selection's la st range having the specified endpoints
1367 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 2 [paras[0].firstChild , 2, paras[0].firstChild, 8]: first addRange() must result in the selection's la st range being the same object we added
1368 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 2 [paras[0].firstChild , 2, paras[0].firstChild, 8]: modifying the first added range must modify the Se lection's last Range
1369 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 2 [paras[0].firstChild , 2, paras[0].firstChild, 8]: modifying the Selection's last Range must modify t he first added Range
1370 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 2 [paras[0].firstChild , 2, paras[0].firstChild, 8]: second addRange() must not throw exceptions or mod ify the range it's given
1371 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 2 [paras[0].firstChild , 2, paras[0].firstChild, 8]: second addRange() must result in rangeCount being 1
1372 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 2 [paras[0].firstChild , 2, paras[0].firstChild, 8]: second addRange() must result in the selection's l ast range having the specified endpoints assert_equals: startOffset of the Selec tion's last Range must match the added Range expected 2 but got 6
1373 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 2 [paras[0].firstChild , 2, paras[0].firstChild, 8]: second addRange() must result in the selection's l ast range being the same object we added assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "b̈c̈d̈" but got object ""
1374 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 2 [paras[0].firstChild , 2, paras[0].firstChild, 8]: modifying the second added range must modify the S election's last Range assert_equals: After mutating the second added Range, star tOffset of the Selection's last Range must match the added Range expected 0 but got 6
1375 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 2 [paras[0].firstChild , 2, paras[0].firstChild, 8]: modifying the Selection's last Range must modify t he second added Range assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match th e added Range expected 0 but got 6
1376 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 3 [paras[0].firstChild , 2, paras[0].firstChild, 9]: first addRange() must not throw exceptions or modi fy the range it's given
1377 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 3 [paras[0].firstChild , 2, paras[0].firstChild, 9]: first addRange() must result in rangeCount being 1
1378 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 3 [paras[0].firstChild , 2, paras[0].firstChild, 9]: first addRange() must result in the selection's la st range having the specified endpoints
1379 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 3 [paras[0].firstChild , 2, paras[0].firstChild, 9]: first addRange() must result in the selection's la st range being the same object we added
1380 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 3 [paras[0].firstChild , 2, paras[0].firstChild, 9]: modifying the first added range must modify the Se lection's last Range
1381 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 3 [paras[0].firstChild , 2, paras[0].firstChild, 9]: modifying the Selection's last Range must modify t he first added Range
1382 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 3 [paras[0].firstChild , 2, paras[0].firstChild, 9]: second addRange() must not throw exceptions or mod ify the range it's given
1383 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 3 [paras[0].firstChild , 2, paras[0].firstChild, 9]: second addRange() must result in rangeCount being 1
1384 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 3 [paras[0].firstChild , 2, paras[0].firstChild, 9]: second addRange() must result in the selection's l ast range having the specified endpoints assert_equals: startOffset of the Selec tion's last Range must match the added Range expected 2 but got 6
1385 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 3 [paras[0].firstChild , 2, paras[0].firstChild, 9]: second addRange() must result in the selection's l ast range being the same object we added assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "b̈c̈d̈e" but got object ""
1386 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 3 [paras[0].firstChild , 2, paras[0].firstChild, 9]: modifying the second added range must modify the S election's last Range assert_equals: After mutating the second added Range, star tOffset of the Selection's last Range must match the added Range expected 0 but got 6
1387 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 3 [paras[0].firstChild , 2, paras[0].firstChild, 9]: modifying the Selection's last Range must modify t he second added Range assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match th e added Range expected 0 but got 6
1388 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 4 [paras[1].firstChild , 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modi fy the range it's given
1389 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 4 [paras[1].firstChild , 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1
1390 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 4 [paras[1].firstChild , 0, paras[1].firstChild, 0]: first addRange() must result in the selection's la st range having the specified endpoints
1391 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 4 [paras[1].firstChild , 0, paras[1].firstChild, 0]: first addRange() must result in the selection's la st range being the same object we added
1392 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 4 [paras[1].firstChild , 0, paras[1].firstChild, 0]: modifying the first added range must modify the Se lection's last Range
1393 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 4 [paras[1].firstChild , 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify t he first added Range
1394 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 4 [paras[1].firstChild , 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or mod ify the range it's given
1395 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 4 [paras[1].firstChild , 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1
1396 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 4 [paras[1].firstChild , 0, paras[1].firstChild, 0]: second addRange() must result in the selection's l ast range having the specified endpoints assert_equals: startContainer of the Se lection's last Range must match the added Range expected Text node "Ijklmnop
1397 " but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
1398 "
1399 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 4 [paras[1].firstChild , 0, paras[1].firstChild, 0]: second addRange() must result in the selection's l ast range being the same object we added assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object ""
1400 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 4 [paras[1].firstChild , 0, paras[1].firstChild, 0]: modifying the second added range must modify the S election's last Range assert_equals: After mutating the second added Range, star tOffset of the Selection's last Range must match the added Range expected 0 but got 6
1401 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 4 [paras[1].firstChild , 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify t he second added Range assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match th e added Range expected 0 but got 6
1402 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 5 [paras[1].firstChild , 0, paras[1].firstChild, 1]: first addRange() must not throw exceptions or modi fy the range it's given
1403 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 5 [paras[1].firstChild , 0, paras[1].firstChild, 1]: first addRange() must result in rangeCount being 1
1404 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 5 [paras[1].firstChild , 0, paras[1].firstChild, 1]: first addRange() must result in the selection's la st range having the specified endpoints
1405 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 5 [paras[1].firstChild , 0, paras[1].firstChild, 1]: first addRange() must result in the selection's la st range being the same object we added
1406 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 5 [paras[1].firstChild , 0, paras[1].firstChild, 1]: modifying the first added range must modify the Se lection's last Range
1407 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 5 [paras[1].firstChild , 0, paras[1].firstChild, 1]: modifying the Selection's last Range must modify t he first added Range
1408 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 5 [paras[1].firstChild , 0, paras[1].firstChild, 1]: second addRange() must not throw exceptions or mod ify the range it's given
1409 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 5 [paras[1].firstChild , 0, paras[1].firstChild, 1]: second addRange() must result in rangeCount being 1
1410 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 5 [paras[1].firstChild , 0, paras[1].firstChild, 1]: second addRange() must result in the selection's l ast range having the specified endpoints assert_equals: startContainer of the Se lection's last Range must match the added Range expected Text node "Ijklmnop
1411 " but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
1412 "
1413 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 5 [paras[1].firstChild , 0, paras[1].firstChild, 1]: second addRange() must result in the selection's l ast range being the same object we added assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "I" but got object ""
1414 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 5 [paras[1].firstChild , 0, paras[1].firstChild, 1]: modifying the second added range must modify the S election's last Range assert_equals: After mutating the second added Range, star tOffset of the Selection's last Range must match the added Range expected 0 but got 6
1415 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 5 [paras[1].firstChild , 0, paras[1].firstChild, 1]: modifying the Selection's last Range must modify t he second added Range assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match th e added Range expected 0 but got 6
1416 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 6 [paras[1].firstChild , 2, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modi fy the range it's given
1417 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 6 [paras[1].firstChild , 2, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1
1418 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 6 [paras[1].firstChild , 2, paras[1].firstChild, 8]: first addRange() must result in the selection's la st range having the specified endpoints
1419 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 6 [paras[1].firstChild , 2, paras[1].firstChild, 8]: first addRange() must result in the selection's la st range being the same object we added
1420 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 6 [paras[1].firstChild , 2, paras[1].firstChild, 8]: modifying the first added range must modify the Se lection's last Range
1421 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 6 [paras[1].firstChild , 2, paras[1].firstChild, 8]: modifying the Selection's last Range must modify t he first added Range
1422 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 6 [paras[1].firstChild , 2, paras[1].firstChild, 8]: second addRange() must not throw exceptions or mod ify the range it's given
1423 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 6 [paras[1].firstChild , 2, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1
1424 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 6 [paras[1].firstChild , 2, paras[1].firstChild, 8]: second addRange() must result in the selection's l ast range having the specified endpoints assert_equals: startContainer of the Se lection's last Range must match the added Range expected Text node "Ijklmnop
1425 " but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
1426 "
1427 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 6 [paras[1].firstChild , 2, paras[1].firstChild, 8]: second addRange() must result in the selection's l ast range being the same object we added assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "klmnop" but got object ""
1428 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 6 [paras[1].firstChild , 2, paras[1].firstChild, 8]: modifying the second added range must modify the S election's last Range assert_equals: After mutating the second added Range, star tOffset of the Selection's last Range must match the added Range expected 0 but got 6
1429 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 6 [paras[1].firstChild , 2, paras[1].firstChild, 8]: modifying the Selection's last Range must modify t he second added Range assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match th e added Range expected 0 but got 6
1430 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 7 [paras[1].firstChild , 2, paras[1].firstChild, 9]: first addRange() must not throw exceptions or modi fy the range it's given
1431 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 7 [paras[1].firstChild , 2, paras[1].firstChild, 9]: first addRange() must result in rangeCount being 1
1432 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 7 [paras[1].firstChild , 2, paras[1].firstChild, 9]: first addRange() must result in the selection's la st range having the specified endpoints
1433 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 7 [paras[1].firstChild , 2, paras[1].firstChild, 9]: first addRange() must result in the selection's la st range being the same object we added
1434 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 7 [paras[1].firstChild , 2, paras[1].firstChild, 9]: modifying the first added range must modify the Se lection's last Range
1435 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 7 [paras[1].firstChild , 2, paras[1].firstChild, 9]: modifying the Selection's last Range must modify t he first added Range
1436 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 7 [paras[1].firstChild , 2, paras[1].firstChild, 9]: second addRange() must not throw exceptions or mod ify the range it's given
1437 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 7 [paras[1].firstChild , 2, paras[1].firstChild, 9]: second addRange() must result in rangeCount being 1
1438 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 7 [paras[1].firstChild , 2, paras[1].firstChild, 9]: second addRange() must result in the selection's l ast range having the specified endpoints assert_equals: startContainer of the Se lection's last Range must match the added Range expected Text node "Ijklmnop
1439 " but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
1440 "
1441 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 7 [paras[1].firstChild , 2, paras[1].firstChild, 9]: second addRange() must result in the selection's l ast range being the same object we added assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "klmnop
1442 " but got object ""
1443 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 7 [paras[1].firstChild , 2, paras[1].firstChild, 9]: modifying the second added range must modify the S election's last Range assert_equals: After mutating the second added Range, star tOffset of the Selection's last Range must match the added Range expected 0 but got 6
1444 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 7 [paras[1].firstChild , 2, paras[1].firstChild, 9]: modifying the Selection's last Range must modify t he second added Range assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match th e added Range expected 0 but got 6
1445 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 8 [detachedPara1.first Child, 0, detachedPara1.firstChild, 0]: first addRange() must not throw exceptio ns or modify the range it's given
1446 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 8 [detachedPara1.first Child, 0, detachedPara1.firstChild, 0]: first addRange() must result in rangeCou nt being 1
1447 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 8 [detachedPara1.first Child, 0, detachedPara1.firstChild, 0]: first addRange() must result in the sele ction's last range having the specified endpoints
1448 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 8 [detachedPara1.first Child, 0, detachedPara1.firstChild, 0]: first addRange() must result in the sele ction's last range being the same object we added
1449 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 8 [detachedPara1.first Child, 0, detachedPara1.firstChild, 0]: modifying the first added range must mod ify the Selection's last Range
1450 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 8 [detachedPara1.first Child, 0, detachedPara1.firstChild, 0]: modifying the Selection's last Range mus t modify the first added Range
1451 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 8 [detachedPara1.first Child, 0, detachedPara1.firstChild, 0]: second addRange() must do nothing
1452 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 9 [detachedPara1.first Child, 0, detachedPara1.firstChild, 1]: first addRange() must not throw exceptio ns or modify the range it's given
1453 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 9 [detachedPara1.first Child, 0, detachedPara1.firstChild, 1]: first addRange() must result in rangeCou nt being 1
1454 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 9 [detachedPara1.first Child, 0, detachedPara1.firstChild, 1]: first addRange() must result in the sele ction's last range having the specified endpoints
1455 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 9 [detachedPara1.first Child, 0, detachedPara1.firstChild, 1]: first addRange() must result in the sele ction's last range being the same object we added
1456 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 9 [detachedPara1.first Child, 0, detachedPara1.firstChild, 1]: modifying the first added range must mod ify the Selection's last Range
1457 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 9 [detachedPara1.first Child, 0, detachedPara1.firstChild, 1]: modifying the Selection's last Range mus t modify the first added Range
1458 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 9 [detachedPara1.first Child, 0, detachedPara1.firstChild, 1]: second addRange() must do nothing
1459 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 10 [detachedPara1.firs tChild, 2, detachedPara1.firstChild, 8]: first addRange() must not throw excepti ons or modify the range it's given
1460 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 10 [detachedPara1.firs tChild, 2, detachedPara1.firstChild, 8]: first addRange() must result in rangeCo unt being 1
1461 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 10 [detachedPara1.firs tChild, 2, detachedPara1.firstChild, 8]: first addRange() must result in the sel ection's last range having the specified endpoints
1462 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 10 [detachedPara1.firs tChild, 2, detachedPara1.firstChild, 8]: first addRange() must result in the sel ection's last range being the same object we added
1463 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 10 [detachedPara1.firs tChild, 2, detachedPara1.firstChild, 8]: modifying the first added range must mo dify the Selection's last Range
1464 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 10 [detachedPara1.firs tChild, 2, detachedPara1.firstChild, 8]: modifying the Selection's last Range mu st modify the first added Range
1465 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 10 [detachedPara1.firs tChild, 2, detachedPara1.firstChild, 8]: second addRange() must do nothing
1466 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 11 [foreignPara1.first Child, 0, foreignPara1.firstChild, 0]: first addRange() must not throw exception s or modify the range it's given
1467 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 11 [foreignPara1.first Child, 0, foreignPara1.firstChild, 0]: first addRange() must result in rangeCoun t being 1
1468 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 11 [foreignPara1.first Child, 0, foreignPara1.firstChild, 0]: first addRange() must result in the selec tion's last range having the specified endpoints
1469 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 11 [foreignPara1.first Child, 0, foreignPara1.firstChild, 0]: first addRange() must result in the selec tion's last range being the same object we added
1470 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 11 [foreignPara1.first Child, 0, foreignPara1.firstChild, 0]: modifying the first added range must modi fy the Selection's last Range
1471 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 11 [foreignPara1.first Child, 0, foreignPara1.firstChild, 0]: modifying the Selection's last Range must modify the first added Range
1472 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 11 [foreignPara1.first Child, 0, foreignPara1.firstChild, 0]: second addRange() must do nothing
1473 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 12 [foreignPara1.first Child, 0, foreignPara1.firstChild, 1]: first addRange() must not throw exception s or modify the range it's given
1474 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 12 [foreignPara1.first Child, 0, foreignPara1.firstChild, 1]: first addRange() must result in rangeCoun t being 1
1475 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 12 [foreignPara1.first Child, 0, foreignPara1.firstChild, 1]: first addRange() must result in the selec tion's last range having the specified endpoints
1476 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 12 [foreignPara1.first Child, 0, foreignPara1.firstChild, 1]: first addRange() must result in the selec tion's last range being the same object we added
1477 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 12 [foreignPara1.first Child, 0, foreignPara1.firstChild, 1]: modifying the first added range must modi fy the Selection's last Range
1478 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 12 [foreignPara1.first Child, 0, foreignPara1.firstChild, 1]: modifying the Selection's last Range must modify the first added Range
1479 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 12 [foreignPara1.first Child, 0, foreignPara1.firstChild, 1]: second addRange() must do nothing
1480 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 13 [foreignPara1.first Child, 2, foreignPara1.firstChild, 8]: first addRange() must not throw exception s or modify the range it's given
1481 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 13 [foreignPara1.first Child, 2, foreignPara1.firstChild, 8]: first addRange() must result in rangeCoun t being 1
1482 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 13 [foreignPara1.first Child, 2, foreignPara1.firstChild, 8]: first addRange() must result in the selec tion's last range having the specified endpoints
1483 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 13 [foreignPara1.first Child, 2, foreignPara1.firstChild, 8]: first addRange() must result in the selec tion's last range being the same object we added
1484 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 13 [foreignPara1.first Child, 2, foreignPara1.firstChild, 8]: modifying the first added range must modi fy the Selection's last Range
1485 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 13 [foreignPara1.first Child, 2, foreignPara1.firstChild, 8]: modifying the Selection's last Range must modify the first added Range
1486 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 13 [foreignPara1.first Child, 2, foreignPara1.firstChild, 8]: second addRange() must do nothing
1487 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 14 [document.documentE lement, 0, document.documentElement, 1]: first addRange() must not throw excepti ons or modify the range it's given
1488 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 14 [document.documentE lement, 0, document.documentElement, 1]: first addRange() must result in rangeCo unt being 1
1489 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 14 [document.documentE lement, 0, document.documentElement, 1]: first addRange() must result in the sel ection's last range having the specified endpoints
1490 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 14 [document.documentE lement, 0, document.documentElement, 1]: first addRange() must result in the sel ection's last range being the same object we added
1491 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 14 [document.documentE lement, 0, document.documentElement, 1]: modifying the first added range must mo dify the Selection's last Range
1492 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 14 [document.documentE lement, 0, document.documentElement, 1]: modifying the Selection's last Range mu st modify the first added Range
1493 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 14 [document.documentE lement, 0, document.documentElement, 1]: second addRange() must not throw except ions or modify the range it's given
1494 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 14 [document.documentE lement, 0, document.documentElement, 1]: second addRange() must result in rangeC ount being 1
1495 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 14 [document.documentE lement, 0, document.documentElement, 1]: second addRange() must result in the se lection's last range having the specified endpoints assert_equals: startContaine r of the Selection's last Range must match the added Range expected Element node <html><head><title>Selection.addRange() tests</title>
1496 <me... but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
1497 "
1498 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 14 [document.documentE lement, 0, document.documentElement, 1]: second addRange() must result in the se lection's last range being the same object we added assert_equals: getRangeAt(ra ngeCount - 1) must return the same object we added expected object "Selection.ad dRange() tests
1499
1500 " but got object ""
1501 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 14 [document.documentE lement, 0, document.documentElement, 1]: modifying the second added range must m odify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expe cted 0 but got 6
1502 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 14 [document.documentE lement, 0, document.documentElement, 1]: modifying the Selection's last Range mu st modify the second added Range assert_equals: After second addRange(), after m utating the Selection's last Range, startOffset of the Selection's last Range mu st match the added Range expected 0 but got 6
1503 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 15 [document.documentE lement, 0, document.documentElement, 2]: first addRange() must not throw excepti ons or modify the range it's given
1504 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 15 [document.documentE lement, 0, document.documentElement, 2]: first addRange() must result in rangeCo unt being 1
1505 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 15 [document.documentE lement, 0, document.documentElement, 2]: first addRange() must result in the sel ection's last range having the specified endpoints
1506 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 15 [document.documentE lement, 0, document.documentElement, 2]: first addRange() must result in the sel ection's last range being the same object we added
1507 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 15 [document.documentE lement, 0, document.documentElement, 2]: modifying the first added range must mo dify the Selection's last Range
1508 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 15 [document.documentE lement, 0, document.documentElement, 2]: modifying the Selection's last Range mu st modify the first added Range
1509 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 15 [document.documentE lement, 0, document.documentElement, 2]: second addRange() must not throw except ions or modify the range it's given
1510 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 15 [document.documentE lement, 0, document.documentElement, 2]: second addRange() must result in rangeC ount being 1
1511 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 15 [document.documentE lement, 0, document.documentElement, 2]: second addRange() must result in the se lection's last range having the specified endpoints assert_equals: startContaine r of the Selection's last Range must match the added Range expected Element node <html><head><title>Selection.addRange() tests</title>
1512 <me... but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
1513 "
1514 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 15 [document.documentE lement, 0, document.documentElement, 2]: second addRange() must result in the se lection's last range being the same object we added assert_equals: getRangeAt(ra ngeCount - 1) must return the same object we added expected object "Selection.ad dRange() tests
1515
1516 Äb̈c̈d̈ëf̈g̈ḧ
1517 Ijklmnop
1518 QrstuvwxYzabcdefGhijklmn
1519
1520
1521
1522
1523
1524 "use strict";
1525
1526 testAddRangeSubSet(28, 32);
1527 testDiv.style.display = "none";
1528 " but got object ""
1529 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 15 [document.documentE lement, 0, document.documentElement, 2]: modifying the second added range must m odify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expe cted 0 but got 6
1530 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 15 [document.documentE lement, 0, document.documentElement, 2]: modifying the Selection's last Range mu st modify the second added Range assert_equals: After second addRange(), after m utating the Selection's last Range, startOffset of the Selection's last Range mu st match the added Range expected 0 but got 6
1531 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 16 [document.documentE lement, 1, document.documentElement, 2]: first addRange() must not throw excepti ons or modify the range it's given
1532 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 16 [document.documentE lement, 1, document.documentElement, 2]: first addRange() must result in rangeCo unt being 1
1533 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 16 [document.documentE lement, 1, document.documentElement, 2]: first addRange() must result in the sel ection's last range having the specified endpoints
1534 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 16 [document.documentE lement, 1, document.documentElement, 2]: first addRange() must result in the sel ection's last range being the same object we added
1535 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 16 [document.documentE lement, 1, document.documentElement, 2]: modifying the first added range must mo dify the Selection's last Range
1536 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 16 [document.documentE lement, 1, document.documentElement, 2]: modifying the Selection's last Range mu st modify the first added Range
1537 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 16 [document.documentE lement, 1, document.documentElement, 2]: second addRange() must not throw except ions or modify the range it's given
1538 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 16 [document.documentE lement, 1, document.documentElement, 2]: second addRange() must result in rangeC ount being 1
1539 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 16 [document.documentE lement, 1, document.documentElement, 2]: second addRange() must result in the se lection's last range having the specified endpoints assert_equals: startContaine r of the Selection's last Range must match the added Range expected Element node <html><head><title>Selection.addRange() tests</title>
1540 <me... but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
1541 "
1542 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 16 [document.documentE lement, 1, document.documentElement, 2]: second addRange() must result in the se lection's last range being the same object we added assert_equals: getRangeAt(ra ngeCount - 1) must return the same object we added expected object "Äb̈c̈d̈ëf̈ g̈ḧ
1543 Ijklmnop
1544 QrstuvwxYzabcdefGhijklmn
1545
1546
1547
1548
1549
1550 "use strict";
1551
1552 testAddRangeSubSet(28, 32);
1553 testDiv.style.display = "none";
1554 " but got object ""
1555 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 16 [document.documentE lement, 1, document.documentElement, 2]: modifying the second added range must m odify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expe cted 0 but got 6
1556 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 16 [document.documentE lement, 1, document.documentElement, 2]: modifying the Selection's last Range mu st modify the second added Range assert_equals: After second addRange(), after m utating the Selection's last Range, startOffset of the Selection's last Range mu st match the added Range expected 0 but got 6
1557 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 17 [document.head, 1, document.head, 1]: first addRange() must not throw exceptions or modify the rang e it's given
1558 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 17 [document.head, 1, document.head, 1]: first addRange() must result in rangeCount being 1
1559 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 17 [document.head, 1, document.head, 1]: first addRange() must result in the selection's last range ha ving the specified endpoints
1560 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 17 [document.head, 1, document.head, 1]: first addRange() must result in the selection's last range be ing the same object we added
1561 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 17 [document.head, 1, document.head, 1]: modifying the first added range must modify the Selection's l ast Range
1562 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the first ad ded Range
1563 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must not throw exceptions or modify the ran ge it's given
1564 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in rangeCount being 1
1565 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range h aving the specified endpoints assert_equals: startContainer of the Selection's l ast Range must match the added Range expected Element node <head><title>Selectio n.addRange() tests</title>
1566 <meta nam... but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
1567 "
1568 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range b eing the same object we added assert_equals: getRangeAt(rangeCount - 1) must ret urn the same object we added expected object "" but got object ""
1569 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6
1570 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second a dded Range assert_equals: After second addRange(), after mutating the Selection' s last Range, startOffset of the Selection's last Range must match the added Ran ge expected 0 but got 6
1571 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the rang e it's given
1572 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1
1573 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range ha ving the specified endpoints
1574 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range be ing the same object we added
1575 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's l ast Range
1576 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first ad ded Range
1577 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the ran ge it's given
1578 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1
1579 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range h aving the specified endpoints assert_equals: startContainer of the Selection's l ast Range must match the added Range expected Element node <body><div id="test"> <p id="a">Äb̈c̈d̈ëf̈g̈ḧ
1580 </p><p id... but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
1581 "
1582 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range b eing the same object we added assert_equals: getRangeAt(rangeCount - 1) must ret urn the same object we added expected object "Äb̈c̈d̈ëf̈g̈ḧ
1583 Ijklmnop
1584 QrstuvwxYzabcdefGhijklmn" but got object ""
1585 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6
1586 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second a dded Range assert_equals: After second addRange(), after mutating the Selection' s last Range, startOffset of the Selection's last Range must match the added Ran ge expected 0 but got 6
1587 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 19 [foreignDoc.documen tElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exc eptions or modify the range it's given
1588 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 19 [foreignDoc.documen tElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in ran geCount being 1
1589 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 19 [foreignDoc.documen tElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints
1590 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 19 [foreignDoc.documen tElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added
1591 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 19 [foreignDoc.documen tElement, 0, foreignDoc.documentElement, 1]: modifying the first added range mus t modify the Selection's last Range
1592 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 19 [foreignDoc.documen tElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Rang e must modify the first added Range
1593 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 19 [foreignDoc.documen tElement, 0, foreignDoc.documentElement, 1]: second addRange() must do nothing
1594 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 20 [foreignDoc.head, 1 , foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given
1595 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 20 [foreignDoc.head, 1 , foreignDoc.head, 1]: first addRange() must result in rangeCount being 1
1596 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 20 [foreignDoc.head, 1 , foreignDoc.head, 1]: first addRange() must result in the selection's last rang e having the specified endpoints
1597 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 20 [foreignDoc.head, 1 , foreignDoc.head, 1]: first addRange() must result in the selection's last rang e being the same object we added
1598 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 20 [foreignDoc.head, 1 , foreignDoc.head, 1]: modifying the first added range must modify the Selection 's last Range
1599 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 20 [foreignDoc.head, 1 , foreignDoc.head, 1]: modifying the Selection's last Range must modify the firs t added Range
1600 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 20 [foreignDoc.head, 1 , foreignDoc.head, 1]: second addRange() must do nothing
1601 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 21 [foreignDoc.body, 0 , foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given
1602 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 21 [foreignDoc.body, 0 , foreignDoc.body, 0]: first addRange() must result in rangeCount being 1
1603 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 21 [foreignDoc.body, 0 , foreignDoc.body, 0]: first addRange() must result in the selection's last rang e having the specified endpoints
1604 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 21 [foreignDoc.body, 0 , foreignDoc.body, 0]: first addRange() must result in the selection's last rang e being the same object we added
1605 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 21 [foreignDoc.body, 0 , foreignDoc.body, 0]: modifying the first added range must modify the Selection 's last Range
1606 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 21 [foreignDoc.body, 0 , foreignDoc.body, 0]: modifying the Selection's last Range must modify the firs t added Range
1607 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 21 [foreignDoc.body, 0 , foreignDoc.body, 0]: second addRange() must do nothing
1608 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 22 [paras[0], 0, paras [0], 0]: first addRange() must not throw exceptions or modify the range it's giv en
1609 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 22 [paras[0], 0, paras [0], 0]: first addRange() must result in rangeCount being 1
1610 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 22 [paras[0], 0, paras [0], 0]: first addRange() must result in the selection's last range having the s pecified endpoints
1611 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 22 [paras[0], 0, paras [0], 0]: first addRange() must result in the selection's last range being the sa me object we added
1612 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 22 [paras[0], 0, paras [0], 0]: modifying the first added range must modify the Selection's last Range
1613 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 22 [paras[0], 0, paras [0], 0]: modifying the Selection's last Range must modify the first added Range
1614 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 22 [paras[0], 0, paras [0], 0]: second addRange() must not throw exceptions or modify the range it's gi ven
1615 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 22 [paras[0], 0, paras [0], 0]: second addRange() must result in rangeCount being 1
1616 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 22 [paras[0], 0, paras [0], 0]: second addRange() must result in the selection's last range having the specified endpoints assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node <p id="a">Äb̈c̈d̈ëf̈g̈ḧ
1617 </p> but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
1618 "
1619 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 22 [paras[0], 0, paras [0], 0]: second addRange() must result in the selection's last range being the s ame object we added assert_equals: getRangeAt(rangeCount - 1) must return the sa me object we added expected object "" but got object ""
1620 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 22 [paras[0], 0, paras [0], 0]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Select ion's last Range must match the added Range expected 0 but got 6
1621 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 22 [paras[0], 0, paras [0], 0]: modifying the Selection's last Range must modify the second added Range assert_equals: After second addRange(), after mutating the Selection's last Ran ge, startOffset of the Selection's last Range must match the added Range expecte d 0 but got 6
1622 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 23 [paras[0], 0, paras [0], 1]: first addRange() must not throw exceptions or modify the range it's giv en
1623 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 23 [paras[0], 0, paras [0], 1]: first addRange() must result in rangeCount being 1
1624 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 23 [paras[0], 0, paras [0], 1]: first addRange() must result in the selection's last range having the s pecified endpoints
1625 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 23 [paras[0], 0, paras [0], 1]: first addRange() must result in the selection's last range being the sa me object we added
1626 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 23 [paras[0], 0, paras [0], 1]: modifying the first added range must modify the Selection's last Range
1627 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 23 [paras[0], 0, paras [0], 1]: modifying the Selection's last Range must modify the first added Range
1628 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 23 [paras[0], 0, paras [0], 1]: second addRange() must not throw exceptions or modify the range it's gi ven
1629 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 23 [paras[0], 0, paras [0], 1]: second addRange() must result in rangeCount being 1
1630 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 23 [paras[0], 0, paras [0], 1]: second addRange() must result in the selection's last range having the specified endpoints assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node <p id="a">Äb̈c̈d̈ëf̈g̈ḧ
1631 </p> but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
1632 "
1633 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 23 [paras[0], 0, paras [0], 1]: second addRange() must result in the selection's last range being the s ame object we added assert_equals: getRangeAt(rangeCount - 1) must return the sa me object we added expected object "Äb̈c̈d̈ëf̈g̈ḧ
1634 " but got object ""
1635 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 23 [paras[0], 0, paras [0], 1]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Select ion's last Range must match the added Range expected 0 but got 6
1636 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 23 [paras[0], 0, paras [0], 1]: modifying the Selection's last Range must modify the second added Range assert_equals: After second addRange(), after mutating the Selection's last Ran ge, startOffset of the Selection's last Range must match the added Range expecte d 0 but got 6
1637 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the rang e it's given
1638 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1
1639 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range ha ving the specified endpoints
1640 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range be ing the same object we added
1641 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's l ast Range
1642 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first ad ded Range
1643 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must do nothing
1644 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the rang e it's given
1645 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1
1646 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range ha ving the specified endpoints
1647 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range be ing the same object we added
1648 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's l ast Range
1649 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first ad ded Range
1650 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must do nothing
1651 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 26 [paras[0].firstChil d, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or mod ify the range it's given
1652 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 26 [paras[0].firstChil d, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1
1653 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 26 [paras[0].firstChil d, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's l ast range having the specified endpoints
1654 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 26 [paras[0].firstChil d, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's l ast range being the same object we added
1655 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 26 [paras[0].firstChil d, 0, paras[1].firstChild, 0]: modifying the first added range must modify the S election's last Range
1656 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 26 [paras[0].firstChil d, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range
1657 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 26 [paras[0].firstChil d, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or mo dify the range it's given
1658 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 26 [paras[0].firstChil d, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1
1659 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 26 [paras[0].firstChil d, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints assert_equals: startOffset of the Sele ction's last Range must match the added Range expected 0 but got 6
1660 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 26 [paras[0].firstChil d, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "Äb̈c̈d̈ëf̈g̈ḧ
1661 " but got object ""
1662 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 26 [paras[0].firstChil d, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, sta rtOffset of the Selection's last Range must match the added Range expected 0 but got 6
1663 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 26 [paras[0].firstChil d, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range assert_equals: After second addRange(), after mutating th e Selection's last Range, startOffset of the Selection's last Range must match t he added Range expected 0 but got 6
1664 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 27 [paras[0].firstChil d, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or mod ify the range it's given
1665 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 27 [paras[0].firstChil d, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1
1666 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 27 [paras[0].firstChil d, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's l ast range having the specified endpoints
1667 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 27 [paras[0].firstChil d, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's l ast range being the same object we added
1668 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 27 [paras[0].firstChil d, 0, paras[1].firstChild, 8]: modifying the first added range must modify the S election's last Range
1669 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 27 [paras[0].firstChil d, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range
1670 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 27 [paras[0].firstChil d, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or mo dify the range it's given
1671 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 27 [paras[0].firstChil d, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1
1672 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 27 [paras[0].firstChil d, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints assert_equals: startOffset of the Sele ction's last Range must match the added Range expected 0 but got 6
1673 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 27 [paras[0].firstChil d, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "Äb̈c̈d̈ëf̈g̈ḧ
1674 Ijklmnop" but got object ""
1675 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 27 [paras[0].firstChil d, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, sta rtOffset of the Selection's last Range must match the added Range expected 0 but got 6
1676 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 27 [paras[0].firstChil d, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range assert_equals: After second addRange(), after mutating th e Selection's last Range, startOffset of the Selection's last Range must match t he added Range expected 0 but got 6
1677 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 28 [paras[0].firstChil d, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the ran ge it's given
1678 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 28 [paras[0].firstChil d, 3, paras[3], 1]: first addRange() must result in rangeCount being 1
1679 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 28 [paras[0].firstChil d, 3, paras[3], 1]: first addRange() must result in the selection's last range h aving the specified endpoints
1680 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 28 [paras[0].firstChil d, 3, paras[3], 1]: first addRange() must result in the selection's last range b eing the same object we added
1681 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 28 [paras[0].firstChil d, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range
1682 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 28 [paras[0].firstChil d, 3, paras[3], 1]: modifying the Selection's last Range must modify the first a dded Range
1683 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 28 [paras[0].firstChil d, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the ra nge it's given
1684 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 28 [paras[0].firstChil d, 3, paras[3], 1]: second addRange() must result in rangeCount being 1
1685 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 28 [paras[0].firstChil d, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints assert_equals: startOffset of the Selection's las t Range must match the added Range expected 3 but got 6
1686 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 28 [paras[0].firstChil d, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added assert_equals: getRangeAt(rangeCount - 1) must re turn the same object we added expected object "̈c̈d̈ëf̈g̈ḧ
1687 Ijklmnop
1688 QrstuvwxYzabcdef" but got object ""
1689 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 28 [paras[0].firstChil d, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6
1690 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 28 [paras[0].firstChil d, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range assert_equals: After second addRange(), after mutating the Selection 's last Range, startOffset of the Selection's last Range must match the added Ra nge expected 0 but got 6
1691 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 29 [paras[0], 0, paras [0].firstChild, 7]: first addRange() must not throw exceptions or modify the ran ge it's given
1692 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 29 [paras[0], 0, paras [0].firstChild, 7]: first addRange() must result in rangeCount being 1
1693 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 29 [paras[0], 0, paras [0].firstChild, 7]: first addRange() must result in the selection's last range h aving the specified endpoints
1694 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 29 [paras[0], 0, paras [0].firstChild, 7]: first addRange() must result in the selection's last range b eing the same object we added
1695 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 29 [paras[0], 0, paras [0].firstChild, 7]: modifying the first added range must modify the Selection's last Range
1696 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 29 [paras[0], 0, paras [0].firstChild, 7]: modifying the Selection's last Range must modify the first a dded Range
1697 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 29 [paras[0], 0, paras [0].firstChild, 7]: second addRange() must not throw exceptions or modify the ra nge it's given
1698 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 29 [paras[0], 0, paras [0].firstChild, 7]: second addRange() must result in rangeCount being 1
1699 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 29 [paras[0], 0, paras [0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node <p id="a">Äb̈c̈d̈ë f̈g̈ḧ
1700 </p> but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
1701 "
1702 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 29 [paras[0], 0, paras [0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added assert_equals: getRangeAt(rangeCount - 1) must re turn the same object we added expected object "Äb̈c̈d" but got object ""
1703 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 29 [paras[0], 0, paras [0].firstChild, 7]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6
1704 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 29 [paras[0], 0, paras [0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range assert_equals: After second addRange(), after mutating the Selection 's last Range, startOffset of the Selection's last Range must match the added Ra nge expected 0 but got 6
1705 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 30 [testDiv, 2, paras[ 4], 1]: first addRange() must not throw exceptions or modify the range it's give n
1706 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 30 [testDiv, 2, paras[ 4], 1]: first addRange() must result in rangeCount being 1
1707 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 30 [testDiv, 2, paras[ 4], 1]: first addRange() must result in the selection's last range having the sp ecified endpoints
1708 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 30 [testDiv, 2, paras[ 4], 1]: first addRange() must result in the selection's last range being the sam e object we added
1709 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 30 [testDiv, 2, paras[ 4], 1]: modifying the first added range must modify the Selection's last Range
1710 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 30 [testDiv, 2, paras[ 4], 1]: modifying the Selection's last Range must modify the first added Range
1711 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 30 [testDiv, 2, paras[ 4], 1]: second addRange() must not throw exceptions or modify the range it's giv en
1712 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 30 [testDiv, 2, paras[ 4], 1]: second addRange() must result in rangeCount being 1
1713 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 30 [testDiv, 2, paras[ 4], 1]: second addRange() must result in the selection's last range having the s pecified endpoints assert_equals: startContainer of the Selection's last Range m ust match the added Range expected Element node <div id="test"><p id="a">Äb̈c̈d ̈ëf̈g̈ḧ
1714 </p><p id="b" s... but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
1715 "
1716 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 30 [testDiv, 2, paras[ 4], 1]: second addRange() must result in the selection's last range being the sa me object we added assert_equals: getRangeAt(rangeCount - 1) must return the sam e object we added expected object "QrstuvwxYzabcdefGhijklmn" but got object ""
1717 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 30 [testDiv, 2, paras[ 4], 1]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Selecti on's last Range must match the added Range expected 0 but got 6
1718 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 30 [testDiv, 2, paras[ 4], 1]: modifying the Selection's last Range must modify the second added Range assert_equals: After second addRange(), after mutating the Selection's last Rang e, startOffset of the Selection's last Range must match the added Range expected 0 but got 6
1719 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 31 [testDiv, 1, paras[ 2].firstChild, 5]: first addRange() must not throw exceptions or modify the rang e it's given
1720 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 31 [testDiv, 1, paras[ 2].firstChild, 5]: first addRange() must result in rangeCount being 1
1721 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 31 [testDiv, 1, paras[ 2].firstChild, 5]: first addRange() must result in the selection's last range ha ving the specified endpoints
1722 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 31 [testDiv, 1, paras[ 2].firstChild, 5]: first addRange() must result in the selection's last range be ing the same object we added
1723 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 31 [testDiv, 1, paras[ 2].firstChild, 5]: modifying the first added range must modify the Selection's l ast Range
1724 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 31 [testDiv, 1, paras[ 2].firstChild, 5]: modifying the Selection's last Range must modify the first ad ded Range
1725 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 31 [testDiv, 1, paras[ 2].firstChild, 5]: second addRange() must not throw exceptions or modify the ran ge it's given
1726 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 31 [testDiv, 1, paras[ 2].firstChild, 5]: second addRange() must result in rangeCount being 1
1727 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 31 [testDiv, 1, paras[ 2].firstChild, 5]: second addRange() must result in the selection's last range h aving the specified endpoints assert_equals: startContainer of the Selection's l ast Range must match the added Range expected Element node <div id="test"><p id= "a">Äb̈c̈d̈ëf̈g̈ḧ
1728 </p><p id="b" s... but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
1729 "
1730 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 31 [testDiv, 1, paras[ 2].firstChild, 5]: second addRange() must result in the selection's last range b eing the same object we added assert_equals: getRangeAt(rangeCount - 1) must ret urn the same object we added expected object "Ijklmnop
1731 Qrstu" but got object ""
1732 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 31 [testDiv, 1, paras[ 2].firstChild, 5]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6
1733 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 31 [testDiv, 1, paras[ 2].firstChild, 5]: modifying the Selection's last Range must modify the second a dded Range assert_equals: After second addRange(), after mutating the Selection' s last Range, startOffset of the Selection's last Range must match the added Ran ge expected 0 but got 6
1734 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 32 [document.documentE lement, 1, document.body, 0]: first addRange() must not throw exceptions or modi fy the range it's given
1735 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 32 [document.documentE lement, 1, document.body, 0]: first addRange() must result in rangeCount being 1
1736 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 32 [document.documentE lement, 1, document.body, 0]: first addRange() must result in the selection's la st range having the specified endpoints
1737 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 32 [document.documentE lement, 1, document.body, 0]: first addRange() must result in the selection's la st range being the same object we added
1738 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 32 [document.documentE lement, 1, document.body, 0]: modifying the first added range must modify the Se lection's last Range
1739 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 32 [document.documentE lement, 1, document.body, 0]: modifying the Selection's last Range must modify t he first added Range
1740 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 32 [document.documentE lement, 1, document.body, 0]: second addRange() must not throw exceptions or mod ify the range it's given
1741 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 32 [document.documentE lement, 1, document.body, 0]: second addRange() must result in rangeCount being 1
1742 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 32 [document.documentE lement, 1, document.body, 0]: second addRange() must result in the selection's l ast range having the specified endpoints assert_equals: startContainer of the Se lection's last Range must match the added Range expected Element node <html><hea d><title>Selection.addRange() tests</title>
1743 <me... but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
1744 "
1745 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 32 [document.documentE lement, 1, document.body, 0]: second addRange() must result in the selection's l ast range being the same object we added assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object ""
1746 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 32 [document.documentE lement, 1, document.body, 0]: modifying the second added range must modify the S election's last Range assert_equals: After mutating the second added Range, star tOffset of the Selection's last Range must match the added Range expected 0 but got 6
1747 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 32 [document.documentE lement, 1, document.body, 0]: modifying the Selection's last Range must modify t he second added Range assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match th e added Range expected 0 but got 6
1748 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 33 [foreignDoc.documen tElement, 1, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given
1749 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 33 [foreignDoc.documen tElement, 1, foreignDoc.body, 0]: first addRange() must result in rangeCount bei ng 1
1750 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 33 [foreignDoc.documen tElement, 1, foreignDoc.body, 0]: first addRange() must result in the selection' s last range having the specified endpoints
1751 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 33 [foreignDoc.documen tElement, 1, foreignDoc.body, 0]: first addRange() must result in the selection' s last range being the same object we added
1752 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 33 [foreignDoc.documen tElement, 1, foreignDoc.body, 0]: modifying the first added range must modify th e Selection's last Range
1753 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 33 [foreignDoc.documen tElement, 1, foreignDoc.body, 0]: modifying the Selection's last Range must modi fy the first added Range
1754 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 33 [foreignDoc.documen tElement, 1, foreignDoc.body, 0]: second addRange() must do nothing
1755 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 34 [document, 0, docum ent, 1]: first addRange() must not throw exceptions or modify the range it's giv en
1756 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 34 [document, 0, docum ent, 1]: first addRange() must result in rangeCount being 1
1757 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 34 [document, 0, docum ent, 1]: first addRange() must result in the selection's last range having the s pecified endpoints
1758 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 34 [document, 0, docum ent, 1]: first addRange() must result in the selection's last range being the sa me object we added
1759 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 34 [document, 0, docum ent, 1]: modifying the first added range must modify the Selection's last Range
1760 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 34 [document, 0, docum ent, 1]: modifying the Selection's last Range must modify the first added Range
1761 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 34 [document, 0, docum ent, 1]: second addRange() must not throw exceptions or modify the range it's gi ven
1762 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 34 [document, 0, docum ent, 1]: second addRange() must result in rangeCount being 1
1763 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 34 [document, 0, docum ent, 1]: second addRange() must result in the selection's last range having the specified endpoints assert_equals: startContainer of the Selection's last Range must match the added Range expected Document node with 2 children but got Text n ode "Äb̈c̈d̈ëf̈g̈ḧ
1764 "
1765 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 34 [document, 0, docum ent, 1]: second addRange() must result in the selection's last range being the s ame object we added assert_equals: getRangeAt(rangeCount - 1) must return the sa me object we added expected object "" but got object ""
1766 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 34 [document, 0, docum ent, 1]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Select ion's last Range must match the added Range expected 0 but got 6
1767 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 34 [document, 0, docum ent, 1]: modifying the Selection's last Range must modify the second added Range assert_equals: After second addRange(), after mutating the Selection's last Ran ge, startOffset of the Selection's last Range must match the added Range expecte d 0 but got 6
1768 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 35 [document, 0, docum ent, 2]: first addRange() must not throw exceptions or modify the range it's giv en
1769 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 35 [document, 0, docum ent, 2]: first addRange() must result in rangeCount being 1
1770 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 35 [document, 0, docum ent, 2]: first addRange() must result in the selection's last range having the s pecified endpoints
1771 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 35 [document, 0, docum ent, 2]: first addRange() must result in the selection's last range being the sa me object we added
1772 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 35 [document, 0, docum ent, 2]: modifying the first added range must modify the Selection's last Range
1773 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 35 [document, 0, docum ent, 2]: modifying the Selection's last Range must modify the first added Range
1774 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 35 [document, 0, docum ent, 2]: second addRange() must not throw exceptions or modify the range it's gi ven
1775 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 35 [document, 0, docum ent, 2]: second addRange() must result in rangeCount being 1
1776 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 35 [document, 0, docum ent, 2]: second addRange() must result in the selection's last range having the specified endpoints assert_equals: startContainer of the Selection's last Range must match the added Range expected Document node with 2 children but got Text n ode "Äb̈c̈d̈ëf̈g̈ḧ
1777 "
1778 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 35 [document, 0, docum ent, 2]: second addRange() must result in the selection's last range being the s ame object we added assert_equals: getRangeAt(rangeCount - 1) must return the sa me object we added expected object "Selection.addRange() tests
1779
1780 Äb̈c̈d̈ëf̈g̈ḧ
1781 Ijklmnop
1782 QrstuvwxYzabcdefGhijklmn
1783
1784
1785
1786
1787
1788 "use strict";
1789
1790 testAddRangeSubSet(28, 32);
1791 testDiv.style.display = "none";
1792 " but got object ""
1793 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 35 [document, 0, docum ent, 2]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Select ion's last Range must match the added Range expected 0 but got 6
1794 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 35 [document, 0, docum ent, 2]: modifying the Selection's last Range must modify the second added Range assert_equals: After second addRange(), after mutating the Selection's last Ran ge, startOffset of the Selection's last Range must match the added Range expecte d 0 but got 6
1795 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 36 [document, 1, docum ent, 2]: first addRange() must not throw exceptions or modify the range it's giv en
1796 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 36 [document, 1, docum ent, 2]: first addRange() must result in rangeCount being 1
1797 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 36 [document, 1, docum ent, 2]: first addRange() must result in the selection's last range having the s pecified endpoints
1798 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 36 [document, 1, docum ent, 2]: first addRange() must result in the selection's last range being the sa me object we added
1799 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 36 [document, 1, docum ent, 2]: modifying the first added range must modify the Selection's last Range
1800 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 36 [document, 1, docum ent, 2]: modifying the Selection's last Range must modify the first added Range
1801 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 36 [document, 1, docum ent, 2]: second addRange() must not throw exceptions or modify the range it's gi ven
1802 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 36 [document, 1, docum ent, 2]: second addRange() must result in rangeCount being 1
1803 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 36 [document, 1, docum ent, 2]: second addRange() must result in the selection's last range having the specified endpoints assert_equals: startContainer of the Selection's last Range must match the added Range expected Document node with 2 children but got Text n ode "Äb̈c̈d̈ëf̈g̈ḧ
1804 "
1805 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 36 [document, 1, docum ent, 2]: second addRange() must result in the selection's last range being the s ame object we added assert_equals: getRangeAt(rangeCount - 1) must return the sa me object we added expected object "Selection.addRange() tests
1806
1807 Äb̈c̈d̈ëf̈g̈ḧ
1808 Ijklmnop
1809 QrstuvwxYzabcdefGhijklmn
1810
1811
1812
1813
1814
1815 "use strict";
1816
1817 testAddRangeSubSet(28, 32);
1818 testDiv.style.display = "none";
1819 " but got object ""
1820 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 36 [document, 1, docum ent, 2]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Select ion's last Range must match the added Range expected 0 but got 6
1821 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 36 [document, 1, docum ent, 2]: modifying the Selection's last Range must modify the second added Range assert_equals: After second addRange(), after mutating the Selection's last Ran ge, startOffset of the Selection's last Range must match the added Range expecte d 0 but got 6
1822 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 37 [testDiv, 0, commen t, 5]: first addRange() must not throw exceptions or modify the range it's given
1823 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 37 [testDiv, 0, commen t, 5]: first addRange() must result in rangeCount being 1
1824 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 37 [testDiv, 0, commen t, 5]: first addRange() must result in the selection's last range having the spe cified endpoints
1825 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 37 [testDiv, 0, commen t, 5]: first addRange() must result in the selection's last range being the same object we added
1826 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 37 [testDiv, 0, commen t, 5]: modifying the first added range must modify the Selection's last Range
1827 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 37 [testDiv, 0, commen t, 5]: modifying the Selection's last Range must modify the first added Range
1828 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 37 [testDiv, 0, commen t, 5]: second addRange() must not throw exceptions or modify the range it's give n
1829 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 37 [testDiv, 0, commen t, 5]: second addRange() must result in rangeCount being 1
1830 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 37 [testDiv, 0, commen t, 5]: second addRange() must result in the selection's last range having the sp ecified endpoints assert_equals: startContainer of the Selection's last Range mu st match the added Range expected Element node <div id="test"><p id="a">Äb̈c̈d̈ ëf̈g̈ḧ
1831 </p><p id="b" s... but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
1832 "
1833 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 37 [testDiv, 0, commen t, 5]: second addRange() must result in the selection's last range being the sam e object we added assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "Äb̈c̈d̈ëf̈g̈ḧ
1834 Ijklmnop
1835 QrstuvwxYzabcdefGhijklmn" but got object ""
1836 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 37 [testDiv, 0, commen t, 5]: modifying the second added range must modify the Selection's last Range a ssert_equals: After mutating the second added Range, startOffset of the Selectio n's last Range must match the added Range expected 0 but got 6
1837 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 37 [testDiv, 0, commen t, 5]: modifying the Selection's last Range must modify the second added Range a ssert_equals: After second addRange(), after mutating the Selection's last Range , startOffset of the Selection's last Range must match the added Range expected 0 but got 6
1838 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 38 [paras[2].firstChil d, 4, comment, 2]: first addRange() must not throw exceptions or modify the rang e it's given
1839 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 38 [paras[2].firstChil d, 4, comment, 2]: first addRange() must result in rangeCount being 1
1840 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 38 [paras[2].firstChil d, 4, comment, 2]: first addRange() must result in the selection's last range ha ving the specified endpoints
1841 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 38 [paras[2].firstChil d, 4, comment, 2]: first addRange() must result in the selection's last range be ing the same object we added
1842 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 38 [paras[2].firstChil d, 4, comment, 2]: modifying the first added range must modify the Selection's l ast Range
1843 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 38 [paras[2].firstChil d, 4, comment, 2]: modifying the Selection's last Range must modify the first ad ded Range
1844 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 38 [paras[2].firstChil d, 4, comment, 2]: second addRange() must not throw exceptions or modify the ran ge it's given
1845 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 38 [paras[2].firstChil d, 4, comment, 2]: second addRange() must result in rangeCount being 1
1846 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 38 [paras[2].firstChil d, 4, comment, 2]: second addRange() must result in the selection's last range h aving the specified endpoints assert_equals: startContainer of the Selection's l ast Range must match the added Range expected Text node "Qrstuvwx" but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
1847 "
1848 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 38 [paras[2].firstChil d, 4, comment, 2]: second addRange() must result in the selection's last range b eing the same object we added assert_equals: getRangeAt(rangeCount - 1) must ret urn the same object we added expected object "uvwxYzabcdefGhijklmn" but got obje ct ""
1849 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 38 [paras[2].firstChil d, 4, comment, 2]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6
1850 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 38 [paras[2].firstChil d, 4, comment, 2]: modifying the Selection's last Range must modify the second a dded Range assert_equals: After second addRange(), after mutating the Selection' s last Range, startOffset of the Selection's last Range must match the added Ran ge expected 0 but got 6
1851 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 39 [paras[3], 1, comme nt, 8]: first addRange() must not throw exceptions or modify the range it's give n
1852 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 39 [paras[3], 1, comme nt, 8]: first addRange() must result in rangeCount being 1
1853 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 39 [paras[3], 1, comme nt, 8]: first addRange() must result in the selection's last range having the sp ecified endpoints
1854 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 39 [paras[3], 1, comme nt, 8]: first addRange() must result in the selection's last range being the sam e object we added
1855 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 39 [paras[3], 1, comme nt, 8]: modifying the first added range must modify the Selection's last Range
1856 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 39 [paras[3], 1, comme nt, 8]: modifying the Selection's last Range must modify the first added Range
1857 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 39 [paras[3], 1, comme nt, 8]: second addRange() must not throw exceptions or modify the range it's giv en
1858 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 39 [paras[3], 1, comme nt, 8]: second addRange() must result in rangeCount being 1
1859 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 39 [paras[3], 1, comme nt, 8]: second addRange() must result in the selection's last range having the s pecified endpoints assert_equals: startContainer of the Selection's last Range m ust match the added Range expected Element node <p id="d" style="display:none">Y zabcdef</p> but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
1860 "
1861 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 39 [paras[3], 1, comme nt, 8]: second addRange() must result in the selection's last range being the sa me object we added assert_equals: getRangeAt(rangeCount - 1) must return the sam e object we added expected object "Ghijklmn" but got object ""
1862 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 39 [paras[3], 1, comme nt, 8]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Selecti on's last Range must match the added Range expected 0 but got 6
1863 FAIL Range 30 [testDiv, 2, paras[4], 1] followed by Range 39 [paras[3], 1, comme nt, 8]: modifying the Selection's last Range must modify the second added Range assert_equals: After second addRange(), after mutating the Selection's last Rang e, startOffset of the Selection's last Range must match the added Range expected 0 but got 6
1864 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 40 [foreignDoc, 0, for eignDoc, 0]: first addRange() must not throw exceptions or modify the range it's given
1865 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 40 [foreignDoc, 0, for eignDoc, 0]: first addRange() must result in rangeCount being 1
1866 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 40 [foreignDoc, 0, for eignDoc, 0]: first addRange() must result in the selection's last range having t he specified endpoints
1867 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 40 [foreignDoc, 0, for eignDoc, 0]: first addRange() must result in the selection's last range being th e same object we added
1868 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 40 [foreignDoc, 0, for eignDoc, 0]: modifying the first added range must modify the Selection's last Ra nge
1869 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 40 [foreignDoc, 0, for eignDoc, 0]: modifying the Selection's last Range must modify the first added Ra nge
1870 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 40 [foreignDoc, 0, for eignDoc, 0]: second addRange() must do nothing
1871 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 41 [foreignDoc, 1, for eignComment, 2]: first addRange() must not throw exceptions or modify the range it's given
1872 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 41 [foreignDoc, 1, for eignComment, 2]: first addRange() must result in rangeCount being 1
1873 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 41 [foreignDoc, 1, for eignComment, 2]: first addRange() must result in the selection's last range havi ng the specified endpoints
1874 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 41 [foreignDoc, 1, for eignComment, 2]: first addRange() must result in the selection's last range bein g the same object we added
1875 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 41 [foreignDoc, 1, for eignComment, 2]: modifying the first added range must modify the Selection's las t Range
1876 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 41 [foreignDoc, 1, for eignComment, 2]: modifying the Selection's last Range must modify the first adde d Range
1877 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 41 [foreignDoc, 1, for eignComment, 2]: second addRange() must do nothing
1878 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 42 [foreignDoc.body, 0 , foreignTextNode, 36]: first addRange() must not throw exceptions or modify the range it's given
1879 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 42 [foreignDoc.body, 0 , foreignTextNode, 36]: first addRange() must result in rangeCount being 1
1880 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 42 [foreignDoc.body, 0 , foreignTextNode, 36]: first addRange() must result in the selection's last ran ge having the specified endpoints
1881 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 42 [foreignDoc.body, 0 , foreignTextNode, 36]: first addRange() must result in the selection's last ran ge being the same object we added
1882 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 42 [foreignDoc.body, 0 , foreignTextNode, 36]: modifying the first added range must modify the Selectio n's last Range
1883 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 42 [foreignDoc.body, 0 , foreignTextNode, 36]: modifying the Selection's last Range must modify the fir st added Range
1884 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 42 [foreignDoc.body, 0 , foreignTextNode, 36]: second addRange() must do nothing
1885 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 43 [xmlDoc, 0, xmlDoc, 0]: first addRange() must not throw exceptions or modify the range it's given
1886 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 43 [xmlDoc, 0, xmlDoc, 0]: first addRange() must result in rangeCount being 1
1887 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 43 [xmlDoc, 0, xmlDoc, 0]: first addRange() must result in the selection's last range having the speci fied endpoints
1888 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 43 [xmlDoc, 0, xmlDoc, 0]: first addRange() must result in the selection's last range being the same o bject we added
1889 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 43 [xmlDoc, 0, xmlDoc, 0]: modifying the first added range must modify the Selection's last Range
1890 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 43 [xmlDoc, 0, xmlDoc, 0]: modifying the Selection's last Range must modify the first added Range
1891 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 43 [xmlDoc, 0, xmlDoc, 0]: second addRange() must do nothing
1892 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 44 [xmlDoc, 1, xmlComm ent, 0]: first addRange() must not throw exceptions or modify the range it's giv en
1893 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 44 [xmlDoc, 1, xmlComm ent, 0]: first addRange() must result in rangeCount being 1
1894 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 44 [xmlDoc, 1, xmlComm ent, 0]: first addRange() must result in the selection's last range having the s pecified endpoints
1895 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 44 [xmlDoc, 1, xmlComm ent, 0]: first addRange() must result in the selection's last range being the sa me object we added
1896 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 44 [xmlDoc, 1, xmlComm ent, 0]: modifying the first added range must modify the Selection's last Range
1897 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 44 [xmlDoc, 1, xmlComm ent, 0]: modifying the Selection's last Range must modify the first added Range
1898 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 44 [xmlDoc, 1, xmlComm ent, 0]: second addRange() must do nothing
1899 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 45 [detachedTextNode, 0, detachedTextNode, 8]: first addRange() must not throw exceptions or modify th e range it's given
1900 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 45 [detachedTextNode, 0, detachedTextNode, 8]: first addRange() must result in rangeCount being 1
1901 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 45 [detachedTextNode, 0, detachedTextNode, 8]: first addRange() must result in the selection's last ra nge having the specified endpoints
1902 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 45 [detachedTextNode, 0, detachedTextNode, 8]: first addRange() must result in the selection's last ra nge being the same object we added
1903 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 45 [detachedTextNode, 0, detachedTextNode, 8]: modifying the first added range must modify the Selecti on's last Range
1904 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 45 [detachedTextNode, 0, detachedTextNode, 8]: modifying the Selection's last Range must modify the fi rst added Range
1905 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 45 [detachedTextNode, 0, detachedTextNode, 8]: second addRange() must do nothing
1906 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 46 [detachedForeignTex tNode, 7, detachedForeignTextNode, 7]: first addRange() must not throw exception s or modify the range it's given
1907 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 46 [detachedForeignTex tNode, 7, detachedForeignTextNode, 7]: first addRange() must result in rangeCoun t being 1
1908 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 46 [detachedForeignTex tNode, 7, detachedForeignTextNode, 7]: first addRange() must result in the selec tion's last range having the specified endpoints
1909 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 46 [detachedForeignTex tNode, 7, detachedForeignTextNode, 7]: first addRange() must result in the selec tion's last range being the same object we added
1910 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 46 [detachedForeignTex tNode, 7, detachedForeignTextNode, 7]: modifying the first added range must modi fy the Selection's last Range
1911 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 46 [detachedForeignTex tNode, 7, detachedForeignTextNode, 7]: modifying the Selection's last Range must modify the first added Range
1912 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 46 [detachedForeignTex tNode, 7, detachedForeignTextNode, 7]: second addRange() must do nothing
1913 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 47 [detachedForeignTex tNode, 0, detachedForeignTextNode, 8]: first addRange() must not throw exception s or modify the range it's given
1914 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 47 [detachedForeignTex tNode, 0, detachedForeignTextNode, 8]: first addRange() must result in rangeCoun t being 1
1915 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 47 [detachedForeignTex tNode, 0, detachedForeignTextNode, 8]: first addRange() must result in the selec tion's last range having the specified endpoints
1916 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 47 [detachedForeignTex tNode, 0, detachedForeignTextNode, 8]: first addRange() must result in the selec tion's last range being the same object we added
1917 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 47 [detachedForeignTex tNode, 0, detachedForeignTextNode, 8]: modifying the first added range must modi fy the Selection's last Range
1918 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 47 [detachedForeignTex tNode, 0, detachedForeignTextNode, 8]: modifying the Selection's last Range must modify the first added Range
1919 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 47 [detachedForeignTex tNode, 0, detachedForeignTextNode, 8]: second addRange() must do nothing
1920 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 48 [detachedXmlTextNod e, 7, detachedXmlTextNode, 7]: first addRange() must not throw exceptions or mod ify the range it's given
1921 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 48 [detachedXmlTextNod e, 7, detachedXmlTextNode, 7]: first addRange() must result in rangeCount being 1
1922 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 48 [detachedXmlTextNod e, 7, detachedXmlTextNode, 7]: first addRange() must result in the selection's l ast range having the specified endpoints
1923 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 48 [detachedXmlTextNod e, 7, detachedXmlTextNode, 7]: first addRange() must result in the selection's l ast range being the same object we added
1924 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 48 [detachedXmlTextNod e, 7, detachedXmlTextNode, 7]: modifying the first added range must modify the S election's last Range
1925 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 48 [detachedXmlTextNod e, 7, detachedXmlTextNode, 7]: modifying the Selection's last Range must modify the first added Range
1926 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 48 [detachedXmlTextNod e, 7, detachedXmlTextNode, 7]: second addRange() must do nothing
1927 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 49 [detachedXmlTextNod e, 0, detachedXmlTextNode, 8]: first addRange() must not throw exceptions or mod ify the range it's given
1928 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 49 [detachedXmlTextNod e, 0, detachedXmlTextNode, 8]: first addRange() must result in rangeCount being 1
1929 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 49 [detachedXmlTextNod e, 0, detachedXmlTextNode, 8]: first addRange() must result in the selection's l ast range having the specified endpoints
1930 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 49 [detachedXmlTextNod e, 0, detachedXmlTextNode, 8]: first addRange() must result in the selection's l ast range being the same object we added
1931 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 49 [detachedXmlTextNod e, 0, detachedXmlTextNode, 8]: modifying the first added range must modify the S election's last Range
1932 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 49 [detachedXmlTextNod e, 0, detachedXmlTextNode, 8]: modifying the Selection's last Range must modify the first added Range
1933 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 49 [detachedXmlTextNod e, 0, detachedXmlTextNode, 8]: second addRange() must do nothing
1934 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 50 [detachedComment, 3 , detachedComment, 4]: first addRange() must not throw exceptions or modify the range it's given
1935 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 50 [detachedComment, 3 , detachedComment, 4]: first addRange() must result in rangeCount being 1
1936 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 50 [detachedComment, 3 , detachedComment, 4]: first addRange() must result in the selection's last rang e having the specified endpoints
1937 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 50 [detachedComment, 3 , detachedComment, 4]: first addRange() must result in the selection's last rang e being the same object we added
1938 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 50 [detachedComment, 3 , detachedComment, 4]: modifying the first added range must modify the Selection 's last Range
1939 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 50 [detachedComment, 3 , detachedComment, 4]: modifying the Selection's last Range must modify the firs t added Range
1940 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 50 [detachedComment, 3 , detachedComment, 4]: second addRange() must do nothing
1941 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 51 [detachedComment, 5 , detachedComment, 5]: first addRange() must not throw exceptions or modify the range it's given
1942 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 51 [detachedComment, 5 , detachedComment, 5]: first addRange() must result in rangeCount being 1
1943 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 51 [detachedComment, 5 , detachedComment, 5]: first addRange() must result in the selection's last rang e having the specified endpoints
1944 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 51 [detachedComment, 5 , detachedComment, 5]: first addRange() must result in the selection's last rang e being the same object we added
1945 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 51 [detachedComment, 5 , detachedComment, 5]: modifying the first added range must modify the Selection 's last Range
1946 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 51 [detachedComment, 5 , detachedComment, 5]: modifying the Selection's last Range must modify the firs t added Range
1947 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 51 [detachedComment, 5 , detachedComment, 5]: second addRange() must do nothing
1948 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 52 [detachedForeignCom ment, 0, detachedForeignComment, 1]: first addRange() must not throw exceptions or modify the range it's given
1949 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 52 [detachedForeignCom ment, 0, detachedForeignComment, 1]: first addRange() must result in rangeCount being 1
1950 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 52 [detachedForeignCom ment, 0, detachedForeignComment, 1]: first addRange() must result in the selecti on's last range having the specified endpoints
1951 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 52 [detachedForeignCom ment, 0, detachedForeignComment, 1]: first addRange() must result in the selecti on's last range being the same object we added
1952 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 52 [detachedForeignCom ment, 0, detachedForeignComment, 1]: modifying the first added range must modify the Selection's last Range
1953 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 52 [detachedForeignCom ment, 0, detachedForeignComment, 1]: modifying the Selection's last Range must m odify the first added Range
1954 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 52 [detachedForeignCom ment, 0, detachedForeignComment, 1]: second addRange() must do nothing
1955 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 53 [detachedForeignCom ment, 4, detachedForeignComment, 4]: first addRange() must not throw exceptions or modify the range it's given
1956 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 53 [detachedForeignCom ment, 4, detachedForeignComment, 4]: first addRange() must result in rangeCount being 1
1957 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 53 [detachedForeignCom ment, 4, detachedForeignComment, 4]: first addRange() must result in the selecti on's last range having the specified endpoints
1958 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 53 [detachedForeignCom ment, 4, detachedForeignComment, 4]: first addRange() must result in the selecti on's last range being the same object we added
1959 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 53 [detachedForeignCom ment, 4, detachedForeignComment, 4]: modifying the first added range must modify the Selection's last Range
1960 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 53 [detachedForeignCom ment, 4, detachedForeignComment, 4]: modifying the Selection's last Range must m odify the first added Range
1961 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 53 [detachedForeignCom ment, 4, detachedForeignComment, 4]: second addRange() must do nothing
1962 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 54 [detachedXmlComment , 2, detachedXmlComment, 6]: first addRange() must not throw exceptions or modif y the range it's given
1963 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 54 [detachedXmlComment , 2, detachedXmlComment, 6]: first addRange() must result in rangeCount being 1
1964 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 54 [detachedXmlComment , 2, detachedXmlComment, 6]: first addRange() must result in the selection's las t range having the specified endpoints
1965 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 54 [detachedXmlComment , 2, detachedXmlComment, 6]: first addRange() must result in the selection's las t range being the same object we added
1966 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 54 [detachedXmlComment , 2, detachedXmlComment, 6]: modifying the first added range must modify the Sel ection's last Range
1967 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 54 [detachedXmlComment , 2, detachedXmlComment, 6]: modifying the Selection's last Range must modify th e first added Range
1968 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 54 [detachedXmlComment , 2, detachedXmlComment, 6]: second addRange() must do nothing
1969 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 55 [docfrag, 0, docfra g, 0]: first addRange() must not throw exceptions or modify the range it's given
1970 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 55 [docfrag, 0, docfra g, 0]: first addRange() must result in rangeCount being 1
1971 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 55 [docfrag, 0, docfra g, 0]: first addRange() must result in the selection's last range having the spe cified endpoints
1972 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 55 [docfrag, 0, docfra g, 0]: first addRange() must result in the selection's last range being the same object we added
1973 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 55 [docfrag, 0, docfra g, 0]: modifying the first added range must modify the Selection's last Range
1974 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 55 [docfrag, 0, docfra g, 0]: modifying the Selection's last Range must modify the first added Range
1975 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 55 [docfrag, 0, docfra g, 0]: second addRange() must do nothing
1976 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 56 [foreignDocfrag, 0, foreignDocfrag, 0]: first addRange() must not throw exceptions or modify the ra nge it's given
1977 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 56 [foreignDocfrag, 0, foreignDocfrag, 0]: first addRange() must result in rangeCount being 1
1978 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 56 [foreignDocfrag, 0, foreignDocfrag, 0]: first addRange() must result in the selection's last range having the specified endpoints
1979 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 56 [foreignDocfrag, 0, foreignDocfrag, 0]: first addRange() must result in the selection's last range being the same object we added
1980 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 56 [foreignDocfrag, 0, foreignDocfrag, 0]: modifying the first added range must modify the Selection's last Range
1981 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 56 [foreignDocfrag, 0, foreignDocfrag, 0]: modifying the Selection's last Range must modify the first added Range
1982 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 56 [foreignDocfrag, 0, foreignDocfrag, 0]: second addRange() must do nothing
1983 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 57 [xmlDocfrag, 0, xml Docfrag, 0]: first addRange() must not throw exceptions or modify the range it's given
1984 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 57 [xmlDocfrag, 0, xml Docfrag, 0]: first addRange() must result in rangeCount being 1
1985 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 57 [xmlDocfrag, 0, xml Docfrag, 0]: first addRange() must result in the selection's last range having t he specified endpoints
1986 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 57 [xmlDocfrag, 0, xml Docfrag, 0]: first addRange() must result in the selection's last range being th e same object we added
1987 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 57 [xmlDocfrag, 0, xml Docfrag, 0]: modifying the first added range must modify the Selection's last Ra nge
1988 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 57 [xmlDocfrag, 0, xml Docfrag, 0]: modifying the Selection's last Range must modify the first added Ra nge
1989 PASS Range 30 [testDiv, 2, paras[4], 1] followed by Range 57 [xmlDocfrag, 0, xml Docfrag, 0]: second addRange() must do nothing
1990 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 0 [paras[0] .firstChild, 0, paras[0].firstChild, 0]: first addRange() must not throw excepti ons or modify the range it's given
1991 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 0 [paras[0] .firstChild, 0, paras[0].firstChild, 0]: first addRange() must result in rangeCo unt being 1
1992 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 0 [paras[0] .firstChild, 0, paras[0].firstChild, 0]: first addRange() must result in the sel ection's last range having the specified endpoints
1993 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 0 [paras[0] .firstChild, 0, paras[0].firstChild, 0]: first addRange() must result in the sel ection's last range being the same object we added
1994 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 0 [paras[0] .firstChild, 0, paras[0].firstChild, 0]: modifying the first added range must mo dify the Selection's last Range
1995 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 0 [paras[0] .firstChild, 0, paras[0].firstChild, 0]: modifying the Selection's last Range mu st modify the first added Range
1996 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 0 [paras[0] .firstChild, 0, paras[0].firstChild, 0]: second addRange() must not throw except ions or modify the range it's given
1997 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 0 [paras[0] .firstChild, 0, paras[0].firstChild, 0]: second addRange() must result in rangeC ount being 1
1998 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 0 [paras[0] .firstChild, 0, paras[0].firstChild, 0]: second addRange() must result in the se lection's last range having the specified endpoints assert_equals: startOffset o f the Selection's last Range must match the added Range expected 0 but got 6
1999 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 0 [paras[0] .firstChild, 0, paras[0].firstChild, 0]: second addRange() must result in the se lection's last range being the same object we added assert_equals: getRangeAt(ra ngeCount - 1) must return the same object we added expected object "" but got ob ject ""
2000 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 0 [paras[0] .firstChild, 0, paras[0].firstChild, 0]: modifying the second added range must m odify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expe cted 0 but got 6
2001 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 0 [paras[0] .firstChild, 0, paras[0].firstChild, 0]: modifying the Selection's last Range mu st modify the second added Range assert_equals: After second addRange(), after m utating the Selection's last Range, startOffset of the Selection's last Range mu st match the added Range expected 0 but got 6
2002 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 1 [paras[0] .firstChild, 0, paras[0].firstChild, 1]: first addRange() must not throw excepti ons or modify the range it's given
2003 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 1 [paras[0] .firstChild, 0, paras[0].firstChild, 1]: first addRange() must result in rangeCo unt being 1
2004 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 1 [paras[0] .firstChild, 0, paras[0].firstChild, 1]: first addRange() must result in the sel ection's last range having the specified endpoints
2005 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 1 [paras[0] .firstChild, 0, paras[0].firstChild, 1]: first addRange() must result in the sel ection's last range being the same object we added
2006 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 1 [paras[0] .firstChild, 0, paras[0].firstChild, 1]: modifying the first added range must mo dify the Selection's last Range
2007 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 1 [paras[0] .firstChild, 0, paras[0].firstChild, 1]: modifying the Selection's last Range mu st modify the first added Range
2008 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 1 [paras[0] .firstChild, 0, paras[0].firstChild, 1]: second addRange() must not throw except ions or modify the range it's given
2009 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 1 [paras[0] .firstChild, 0, paras[0].firstChild, 1]: second addRange() must result in rangeC ount being 1
2010 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 1 [paras[0] .firstChild, 0, paras[0].firstChild, 1]: second addRange() must result in the se lection's last range having the specified endpoints assert_equals: startOffset o f the Selection's last Range must match the added Range expected 0 but got 6
2011 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 1 [paras[0] .firstChild, 0, paras[0].firstChild, 1]: second addRange() must result in the se lection's last range being the same object we added assert_equals: getRangeAt(ra ngeCount - 1) must return the same object we added expected object "A" but got o bject ""
2012 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 1 [paras[0] .firstChild, 0, paras[0].firstChild, 1]: modifying the second added range must m odify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expe cted 0 but got 6
2013 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 1 [paras[0] .firstChild, 0, paras[0].firstChild, 1]: modifying the Selection's last Range mu st modify the second added Range assert_equals: After second addRange(), after m utating the Selection's last Range, startOffset of the Selection's last Range mu st match the added Range expected 0 but got 6
2014 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 2 [paras[0] .firstChild, 2, paras[0].firstChild, 8]: first addRange() must not throw excepti ons or modify the range it's given
2015 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 2 [paras[0] .firstChild, 2, paras[0].firstChild, 8]: first addRange() must result in rangeCo unt being 1
2016 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 2 [paras[0] .firstChild, 2, paras[0].firstChild, 8]: first addRange() must result in the sel ection's last range having the specified endpoints
2017 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 2 [paras[0] .firstChild, 2, paras[0].firstChild, 8]: first addRange() must result in the sel ection's last range being the same object we added
2018 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 2 [paras[0] .firstChild, 2, paras[0].firstChild, 8]: modifying the first added range must mo dify the Selection's last Range
2019 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 2 [paras[0] .firstChild, 2, paras[0].firstChild, 8]: modifying the Selection's last Range mu st modify the first added Range
2020 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 2 [paras[0] .firstChild, 2, paras[0].firstChild, 8]: second addRange() must not throw except ions or modify the range it's given
2021 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 2 [paras[0] .firstChild, 2, paras[0].firstChild, 8]: second addRange() must result in rangeC ount being 1
2022 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 2 [paras[0] .firstChild, 2, paras[0].firstChild, 8]: second addRange() must result in the se lection's last range having the specified endpoints assert_equals: startOffset o f the Selection's last Range must match the added Range expected 2 but got 6
2023 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 2 [paras[0] .firstChild, 2, paras[0].firstChild, 8]: second addRange() must result in the se lection's last range being the same object we added assert_equals: getRangeAt(ra ngeCount - 1) must return the same object we added expected object "b̈c̈d̈" but got object ""
2024 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 2 [paras[0] .firstChild, 2, paras[0].firstChild, 8]: modifying the second added range must m odify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expe cted 0 but got 6
2025 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 2 [paras[0] .firstChild, 2, paras[0].firstChild, 8]: modifying the Selection's last Range mu st modify the second added Range assert_equals: After second addRange(), after m utating the Selection's last Range, startOffset of the Selection's last Range mu st match the added Range expected 0 but got 6
2026 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 3 [paras[0] .firstChild, 2, paras[0].firstChild, 9]: first addRange() must not throw excepti ons or modify the range it's given
2027 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 3 [paras[0] .firstChild, 2, paras[0].firstChild, 9]: first addRange() must result in rangeCo unt being 1
2028 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 3 [paras[0] .firstChild, 2, paras[0].firstChild, 9]: first addRange() must result in the sel ection's last range having the specified endpoints
2029 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 3 [paras[0] .firstChild, 2, paras[0].firstChild, 9]: first addRange() must result in the sel ection's last range being the same object we added
2030 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 3 [paras[0] .firstChild, 2, paras[0].firstChild, 9]: modifying the first added range must mo dify the Selection's last Range
2031 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 3 [paras[0] .firstChild, 2, paras[0].firstChild, 9]: modifying the Selection's last Range mu st modify the first added Range
2032 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 3 [paras[0] .firstChild, 2, paras[0].firstChild, 9]: second addRange() must not throw except ions or modify the range it's given
2033 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 3 [paras[0] .firstChild, 2, paras[0].firstChild, 9]: second addRange() must result in rangeC ount being 1
2034 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 3 [paras[0] .firstChild, 2, paras[0].firstChild, 9]: second addRange() must result in the se lection's last range having the specified endpoints assert_equals: startOffset o f the Selection's last Range must match the added Range expected 2 but got 6
2035 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 3 [paras[0] .firstChild, 2, paras[0].firstChild, 9]: second addRange() must result in the se lection's last range being the same object we added assert_equals: getRangeAt(ra ngeCount - 1) must return the same object we added expected object "b̈c̈d̈e" but got object ""
2036 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 3 [paras[0] .firstChild, 2, paras[0].firstChild, 9]: modifying the second added range must m odify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expe cted 0 but got 6
2037 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 3 [paras[0] .firstChild, 2, paras[0].firstChild, 9]: modifying the Selection's last Range mu st modify the second added Range assert_equals: After second addRange(), after m utating the Selection's last Range, startOffset of the Selection's last Range mu st match the added Range expected 0 but got 6
2038 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 4 [paras[1] .firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw excepti ons or modify the range it's given
2039 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 4 [paras[1] .firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCo unt being 1
2040 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 4 [paras[1] .firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the sel ection's last range having the specified endpoints
2041 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 4 [paras[1] .firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the sel ection's last range being the same object we added
2042 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 4 [paras[1] .firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must mo dify the Selection's last Range
2043 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 4 [paras[1] .firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range mu st modify the first added Range
2044 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 4 [paras[1] .firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw except ions or modify the range it's given
2045 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 4 [paras[1] .firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeC ount being 1
2046 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 4 [paras[1] .firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the se lection's last range having the specified endpoints assert_equals: startContaine r of the Selection's last Range must match the added Range expected Text node "I jklmnop
2047 " but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
2048 "
2049 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 4 [paras[1] .firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the se lection's last range being the same object we added assert_equals: getRangeAt(ra ngeCount - 1) must return the same object we added expected object "" but got ob ject ""
2050 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 4 [paras[1] .firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must m odify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expe cted 0 but got 6
2051 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 4 [paras[1] .firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range mu st modify the second added Range assert_equals: After second addRange(), after m utating the Selection's last Range, startOffset of the Selection's last Range mu st match the added Range expected 0 but got 6
2052 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 5 [paras[1] .firstChild, 0, paras[1].firstChild, 1]: first addRange() must not throw excepti ons or modify the range it's given
2053 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 5 [paras[1] .firstChild, 0, paras[1].firstChild, 1]: first addRange() must result in rangeCo unt being 1
2054 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 5 [paras[1] .firstChild, 0, paras[1].firstChild, 1]: first addRange() must result in the sel ection's last range having the specified endpoints
2055 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 5 [paras[1] .firstChild, 0, paras[1].firstChild, 1]: first addRange() must result in the sel ection's last range being the same object we added
2056 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 5 [paras[1] .firstChild, 0, paras[1].firstChild, 1]: modifying the first added range must mo dify the Selection's last Range
2057 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 5 [paras[1] .firstChild, 0, paras[1].firstChild, 1]: modifying the Selection's last Range mu st modify the first added Range
2058 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 5 [paras[1] .firstChild, 0, paras[1].firstChild, 1]: second addRange() must not throw except ions or modify the range it's given
2059 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 5 [paras[1] .firstChild, 0, paras[1].firstChild, 1]: second addRange() must result in rangeC ount being 1
2060 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 5 [paras[1] .firstChild, 0, paras[1].firstChild, 1]: second addRange() must result in the se lection's last range having the specified endpoints assert_equals: startContaine r of the Selection's last Range must match the added Range expected Text node "I jklmnop
2061 " but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
2062 "
2063 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 5 [paras[1] .firstChild, 0, paras[1].firstChild, 1]: second addRange() must result in the se lection's last range being the same object we added assert_equals: getRangeAt(ra ngeCount - 1) must return the same object we added expected object "I" but got o bject ""
2064 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 5 [paras[1] .firstChild, 0, paras[1].firstChild, 1]: modifying the second added range must m odify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expe cted 0 but got 6
2065 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 5 [paras[1] .firstChild, 0, paras[1].firstChild, 1]: modifying the Selection's last Range mu st modify the second added Range assert_equals: After second addRange(), after m utating the Selection's last Range, startOffset of the Selection's last Range mu st match the added Range expected 0 but got 6
2066 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 6 [paras[1] .firstChild, 2, paras[1].firstChild, 8]: first addRange() must not throw excepti ons or modify the range it's given
2067 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 6 [paras[1] .firstChild, 2, paras[1].firstChild, 8]: first addRange() must result in rangeCo unt being 1
2068 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 6 [paras[1] .firstChild, 2, paras[1].firstChild, 8]: first addRange() must result in the sel ection's last range having the specified endpoints
2069 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 6 [paras[1] .firstChild, 2, paras[1].firstChild, 8]: first addRange() must result in the sel ection's last range being the same object we added
2070 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 6 [paras[1] .firstChild, 2, paras[1].firstChild, 8]: modifying the first added range must mo dify the Selection's last Range
2071 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 6 [paras[1] .firstChild, 2, paras[1].firstChild, 8]: modifying the Selection's last Range mu st modify the first added Range
2072 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 6 [paras[1] .firstChild, 2, paras[1].firstChild, 8]: second addRange() must not throw except ions or modify the range it's given
2073 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 6 [paras[1] .firstChild, 2, paras[1].firstChild, 8]: second addRange() must result in rangeC ount being 1
2074 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 6 [paras[1] .firstChild, 2, paras[1].firstChild, 8]: second addRange() must result in the se lection's last range having the specified endpoints assert_equals: startContaine r of the Selection's last Range must match the added Range expected Text node "I jklmnop
2075 " but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
2076 "
2077 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 6 [paras[1] .firstChild, 2, paras[1].firstChild, 8]: second addRange() must result in the se lection's last range being the same object we added assert_equals: getRangeAt(ra ngeCount - 1) must return the same object we added expected object "klmnop" but got object ""
2078 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 6 [paras[1] .firstChild, 2, paras[1].firstChild, 8]: modifying the second added range must m odify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expe cted 0 but got 6
2079 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 6 [paras[1] .firstChild, 2, paras[1].firstChild, 8]: modifying the Selection's last Range mu st modify the second added Range assert_equals: After second addRange(), after m utating the Selection's last Range, startOffset of the Selection's last Range mu st match the added Range expected 0 but got 6
2080 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 7 [paras[1] .firstChild, 2, paras[1].firstChild, 9]: first addRange() must not throw excepti ons or modify the range it's given
2081 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 7 [paras[1] .firstChild, 2, paras[1].firstChild, 9]: first addRange() must result in rangeCo unt being 1
2082 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 7 [paras[1] .firstChild, 2, paras[1].firstChild, 9]: first addRange() must result in the sel ection's last range having the specified endpoints
2083 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 7 [paras[1] .firstChild, 2, paras[1].firstChild, 9]: first addRange() must result in the sel ection's last range being the same object we added
2084 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 7 [paras[1] .firstChild, 2, paras[1].firstChild, 9]: modifying the first added range must mo dify the Selection's last Range
2085 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 7 [paras[1] .firstChild, 2, paras[1].firstChild, 9]: modifying the Selection's last Range mu st modify the first added Range
2086 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 7 [paras[1] .firstChild, 2, paras[1].firstChild, 9]: second addRange() must not throw except ions or modify the range it's given
2087 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 7 [paras[1] .firstChild, 2, paras[1].firstChild, 9]: second addRange() must result in rangeC ount being 1
2088 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 7 [paras[1] .firstChild, 2, paras[1].firstChild, 9]: second addRange() must result in the se lection's last range having the specified endpoints assert_equals: startContaine r of the Selection's last Range must match the added Range expected Text node "I jklmnop
2089 " but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
2090 "
2091 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 7 [paras[1] .firstChild, 2, paras[1].firstChild, 9]: second addRange() must result in the se lection's last range being the same object we added assert_equals: getRangeAt(ra ngeCount - 1) must return the same object we added expected object "klmnop
2092 " but got object ""
2093 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 7 [paras[1] .firstChild, 2, paras[1].firstChild, 9]: modifying the second added range must m odify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expe cted 0 but got 6
2094 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 7 [paras[1] .firstChild, 2, paras[1].firstChild, 9]: modifying the Selection's last Range mu st modify the second added Range assert_equals: After second addRange(), after m utating the Selection's last Range, startOffset of the Selection's last Range mu st match the added Range expected 0 but got 6
2095 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 8 [detached Para1.firstChild, 0, detachedPara1.firstChild, 0]: first addRange() must not thr ow exceptions or modify the range it's given
2096 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 8 [detached Para1.firstChild, 0, detachedPara1.firstChild, 0]: first addRange() must result in rangeCount being 1
2097 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 8 [detached Para1.firstChild, 0, detachedPara1.firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints
2098 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 8 [detached Para1.firstChild, 0, detachedPara1.firstChild, 0]: first addRange() must result in the selection's last range being the same object we added
2099 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 8 [detached Para1.firstChild, 0, detachedPara1.firstChild, 0]: modifying the first added ran ge must modify the Selection's last Range
2100 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 8 [detached Para1.firstChild, 0, detachedPara1.firstChild, 0]: modifying the Selection's las t Range must modify the first added Range
2101 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 8 [detached Para1.firstChild, 0, detachedPara1.firstChild, 0]: second addRange() must do not hing
2102 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 9 [detached Para1.firstChild, 0, detachedPara1.firstChild, 1]: first addRange() must not thr ow exceptions or modify the range it's given
2103 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 9 [detached Para1.firstChild, 0, detachedPara1.firstChild, 1]: first addRange() must result in rangeCount being 1
2104 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 9 [detached Para1.firstChild, 0, detachedPara1.firstChild, 1]: first addRange() must result in the selection's last range having the specified endpoints
2105 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 9 [detached Para1.firstChild, 0, detachedPara1.firstChild, 1]: first addRange() must result in the selection's last range being the same object we added
2106 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 9 [detached Para1.firstChild, 0, detachedPara1.firstChild, 1]: modifying the first added ran ge must modify the Selection's last Range
2107 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 9 [detached Para1.firstChild, 0, detachedPara1.firstChild, 1]: modifying the Selection's las t Range must modify the first added Range
2108 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 9 [detached Para1.firstChild, 0, detachedPara1.firstChild, 1]: second addRange() must do not hing
2109 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 10 [detache dPara1.firstChild, 2, detachedPara1.firstChild, 8]: first addRange() must not th row exceptions or modify the range it's given
2110 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 10 [detache dPara1.firstChild, 2, detachedPara1.firstChild, 8]: first addRange() must result in rangeCount being 1
2111 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 10 [detache dPara1.firstChild, 2, detachedPara1.firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints
2112 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 10 [detache dPara1.firstChild, 2, detachedPara1.firstChild, 8]: first addRange() must result in the selection's last range being the same object we added
2113 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 10 [detache dPara1.firstChild, 2, detachedPara1.firstChild, 8]: modifying the first added ra nge must modify the Selection's last Range
2114 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 10 [detache dPara1.firstChild, 2, detachedPara1.firstChild, 8]: modifying the Selection's la st Range must modify the first added Range
2115 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 10 [detache dPara1.firstChild, 2, detachedPara1.firstChild, 8]: second addRange() must do no thing
2116 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 11 [foreign Para1.firstChild, 0, foreignPara1.firstChild, 0]: first addRange() must not thro w exceptions or modify the range it's given
2117 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 11 [foreign Para1.firstChild, 0, foreignPara1.firstChild, 0]: first addRange() must result i n rangeCount being 1
2118 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 11 [foreign Para1.firstChild, 0, foreignPara1.firstChild, 0]: first addRange() must result i n the selection's last range having the specified endpoints
2119 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 11 [foreign Para1.firstChild, 0, foreignPara1.firstChild, 0]: first addRange() must result i n the selection's last range being the same object we added
2120 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 11 [foreign Para1.firstChild, 0, foreignPara1.firstChild, 0]: modifying the first added rang e must modify the Selection's last Range
2121 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 11 [foreign Para1.firstChild, 0, foreignPara1.firstChild, 0]: modifying the Selection's last Range must modify the first added Range
2122 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 11 [foreign Para1.firstChild, 0, foreignPara1.firstChild, 0]: second addRange() must do noth ing
2123 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 12 [foreign Para1.firstChild, 0, foreignPara1.firstChild, 1]: first addRange() must not thro w exceptions or modify the range it's given
2124 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 12 [foreign Para1.firstChild, 0, foreignPara1.firstChild, 1]: first addRange() must result i n rangeCount being 1
2125 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 12 [foreign Para1.firstChild, 0, foreignPara1.firstChild, 1]: first addRange() must result i n the selection's last range having the specified endpoints
2126 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 12 [foreign Para1.firstChild, 0, foreignPara1.firstChild, 1]: first addRange() must result i n the selection's last range being the same object we added
2127 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 12 [foreign Para1.firstChild, 0, foreignPara1.firstChild, 1]: modifying the first added rang e must modify the Selection's last Range
2128 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 12 [foreign Para1.firstChild, 0, foreignPara1.firstChild, 1]: modifying the Selection's last Range must modify the first added Range
2129 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 12 [foreign Para1.firstChild, 0, foreignPara1.firstChild, 1]: second addRange() must do noth ing
2130 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 13 [foreign Para1.firstChild, 2, foreignPara1.firstChild, 8]: first addRange() must not thro w exceptions or modify the range it's given
2131 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 13 [foreign Para1.firstChild, 2, foreignPara1.firstChild, 8]: first addRange() must result i n rangeCount being 1
2132 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 13 [foreign Para1.firstChild, 2, foreignPara1.firstChild, 8]: first addRange() must result i n the selection's last range having the specified endpoints
2133 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 13 [foreign Para1.firstChild, 2, foreignPara1.firstChild, 8]: first addRange() must result i n the selection's last range being the same object we added
2134 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 13 [foreign Para1.firstChild, 2, foreignPara1.firstChild, 8]: modifying the first added rang e must modify the Selection's last Range
2135 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 13 [foreign Para1.firstChild, 2, foreignPara1.firstChild, 8]: modifying the Selection's last Range must modify the first added Range
2136 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 13 [foreign Para1.firstChild, 2, foreignPara1.firstChild, 8]: second addRange() must do noth ing
2137 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 14 [documen t.documentElement, 0, document.documentElement, 1]: first addRange() must not th row exceptions or modify the range it's given
2138 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 14 [documen t.documentElement, 0, document.documentElement, 1]: first addRange() must result in rangeCount being 1
2139 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 14 [documen t.documentElement, 0, document.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints
2140 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 14 [documen t.documentElement, 0, document.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added
2141 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 14 [documen t.documentElement, 0, document.documentElement, 1]: modifying the first added ra nge must modify the Selection's last Range
2142 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 14 [documen t.documentElement, 0, document.documentElement, 1]: modifying the Selection's la st Range must modify the first added Range
2143 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 14 [documen t.documentElement, 0, document.documentElement, 1]: second addRange() must not t hrow exceptions or modify the range it's given
2144 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 14 [documen t.documentElement, 0, document.documentElement, 1]: second addRange() must resul t in rangeCount being 1
2145 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 14 [documen t.documentElement, 0, document.documentElement, 1]: second addRange() must resul t in the selection's last range having the specified endpoints assert_equals: st artContainer of the Selection's last Range must match the added Range expected E lement node <html><head><title>Selection.addRange() tests</title>
2146 <me... but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
2147 "
2148 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 14 [documen t.documentElement, 0, document.documentElement, 1]: second addRange() must resul t in the selection's last range being the same object we added assert_equals: ge tRangeAt(rangeCount - 1) must return the same object we added expected object "S election.addRange() tests
2149
2150 " but got object ""
2151 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 14 [documen t.documentElement, 0, document.documentElement, 1]: modifying the second added r ange must modify the Selection's last Range assert_equals: After mutating the se cond added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6
2152 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 14 [documen t.documentElement, 0, document.documentElement, 1]: modifying the Selection's la st Range must modify the second added Range assert_equals: After second addRange (), after mutating the Selection's last Range, startOffset of the Selection's la st Range must match the added Range expected 0 but got 6
2153 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 15 [documen t.documentElement, 0, document.documentElement, 2]: first addRange() must not th row exceptions or modify the range it's given
2154 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 15 [documen t.documentElement, 0, document.documentElement, 2]: first addRange() must result in rangeCount being 1
2155 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 15 [documen t.documentElement, 0, document.documentElement, 2]: first addRange() must result in the selection's last range having the specified endpoints
2156 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 15 [documen t.documentElement, 0, document.documentElement, 2]: first addRange() must result in the selection's last range being the same object we added
2157 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 15 [documen t.documentElement, 0, document.documentElement, 2]: modifying the first added ra nge must modify the Selection's last Range
2158 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 15 [documen t.documentElement, 0, document.documentElement, 2]: modifying the Selection's la st Range must modify the first added Range
2159 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 15 [documen t.documentElement, 0, document.documentElement, 2]: second addRange() must not t hrow exceptions or modify the range it's given
2160 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 15 [documen t.documentElement, 0, document.documentElement, 2]: second addRange() must resul t in rangeCount being 1
2161 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 15 [documen t.documentElement, 0, document.documentElement, 2]: second addRange() must resul t in the selection's last range having the specified endpoints assert_equals: st artContainer of the Selection's last Range must match the added Range expected E lement node <html><head><title>Selection.addRange() tests</title>
2162 <me... but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
2163 "
2164 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 15 [documen t.documentElement, 0, document.documentElement, 2]: second addRange() must resul t in the selection's last range being the same object we added assert_equals: ge tRangeAt(rangeCount - 1) must return the same object we added expected object "S election.addRange() tests
2165
2166 Äb̈c̈d̈ëf̈g̈ḧ
2167 Ijklmnop
2168 QrstuvwxYzabcdefGhijklmn
2169
2170
2171
2172
2173
2174 "use strict";
2175
2176 testAddRangeSubSet(28, 32);
2177 testDiv.style.display = "none";
2178 " but got object ""
2179 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 15 [documen t.documentElement, 0, document.documentElement, 2]: modifying the second added r ange must modify the Selection's last Range assert_equals: After mutating the se cond added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6
2180 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 15 [documen t.documentElement, 0, document.documentElement, 2]: modifying the Selection's la st Range must modify the second added Range assert_equals: After second addRange (), after mutating the Selection's last Range, startOffset of the Selection's la st Range must match the added Range expected 0 but got 6
2181 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 16 [documen t.documentElement, 1, document.documentElement, 2]: first addRange() must not th row exceptions or modify the range it's given
2182 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 16 [documen t.documentElement, 1, document.documentElement, 2]: first addRange() must result in rangeCount being 1
2183 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 16 [documen t.documentElement, 1, document.documentElement, 2]: first addRange() must result in the selection's last range having the specified endpoints
2184 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 16 [documen t.documentElement, 1, document.documentElement, 2]: first addRange() must result in the selection's last range being the same object we added
2185 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 16 [documen t.documentElement, 1, document.documentElement, 2]: modifying the first added ra nge must modify the Selection's last Range
2186 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 16 [documen t.documentElement, 1, document.documentElement, 2]: modifying the Selection's la st Range must modify the first added Range
2187 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 16 [documen t.documentElement, 1, document.documentElement, 2]: second addRange() must not t hrow exceptions or modify the range it's given
2188 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 16 [documen t.documentElement, 1, document.documentElement, 2]: second addRange() must resul t in rangeCount being 1
2189 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 16 [documen t.documentElement, 1, document.documentElement, 2]: second addRange() must resul t in the selection's last range having the specified endpoints assert_equals: st artContainer of the Selection's last Range must match the added Range expected E lement node <html><head><title>Selection.addRange() tests</title>
2190 <me... but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
2191 "
2192 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 16 [documen t.documentElement, 1, document.documentElement, 2]: second addRange() must resul t in the selection's last range being the same object we added assert_equals: ge tRangeAt(rangeCount - 1) must return the same object we added expected object "A ̈b̈c̈d̈ëf̈g̈ḧ
2193 Ijklmnop
2194 QrstuvwxYzabcdefGhijklmn
2195
2196
2197
2198
2199
2200 "use strict";
2201
2202 testAddRangeSubSet(28, 32);
2203 testDiv.style.display = "none";
2204 " but got object ""
2205 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 16 [documen t.documentElement, 1, document.documentElement, 2]: modifying the second added r ange must modify the Selection's last Range assert_equals: After mutating the se cond added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6
2206 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 16 [documen t.documentElement, 1, document.documentElement, 2]: modifying the Selection's la st Range must modify the second added Range assert_equals: After second addRange (), after mutating the Selection's last Range, startOffset of the Selection's la st Range must match the added Range expected 0 but got 6
2207 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 17 [documen t.head, 1, document.head, 1]: first addRange() must not throw exceptions or modi fy the range it's given
2208 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 17 [documen t.head, 1, document.head, 1]: first addRange() must result in rangeCount being 1
2209 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 17 [documen t.head, 1, document.head, 1]: first addRange() must result in the selection's la st range having the specified endpoints
2210 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 17 [documen t.head, 1, document.head, 1]: first addRange() must result in the selection's la st range being the same object we added
2211 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 17 [documen t.head, 1, document.head, 1]: modifying the first added range must modify the Se lection's last Range
2212 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 17 [documen t.head, 1, document.head, 1]: modifying the Selection's last Range must modify t he first added Range
2213 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 17 [documen t.head, 1, document.head, 1]: second addRange() must not throw exceptions or mod ify the range it's given
2214 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 17 [documen t.head, 1, document.head, 1]: second addRange() must result in rangeCount being 1
2215 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 17 [documen t.head, 1, document.head, 1]: second addRange() must result in the selection's l ast range having the specified endpoints assert_equals: startContainer of the Se lection's last Range must match the added Range expected Element node <head><tit le>Selection.addRange() tests</title>
2216 <meta nam... but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
2217 "
2218 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 17 [documen t.head, 1, document.head, 1]: second addRange() must result in the selection's l ast range being the same object we added assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object ""
2219 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 17 [documen t.head, 1, document.head, 1]: modifying the second added range must modify the S election's last Range assert_equals: After mutating the second added Range, star tOffset of the Selection's last Range must match the added Range expected 0 but got 6
2220 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 17 [documen t.head, 1, document.head, 1]: modifying the Selection's last Range must modify t he second added Range assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match th e added Range expected 0 but got 6
2221 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 18 [documen t.body, 0, document.body, 1]: first addRange() must not throw exceptions or modi fy the range it's given
2222 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 18 [documen t.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1
2223 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 18 [documen t.body, 0, document.body, 1]: first addRange() must result in the selection's la st range having the specified endpoints
2224 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 18 [documen t.body, 0, document.body, 1]: first addRange() must result in the selection's la st range being the same object we added
2225 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 18 [documen t.body, 0, document.body, 1]: modifying the first added range must modify the Se lection's last Range
2226 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 18 [documen t.body, 0, document.body, 1]: modifying the Selection's last Range must modify t he first added Range
2227 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 18 [documen t.body, 0, document.body, 1]: second addRange() must not throw exceptions or mod ify the range it's given
2228 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 18 [documen t.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1
2229 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 18 [documen t.body, 0, document.body, 1]: second addRange() must result in the selection's l ast range having the specified endpoints assert_equals: startContainer of the Se lection's last Range must match the added Range expected Element node <body><div id="test"><p id="a">Äb̈c̈d̈ëf̈g̈ḧ
2230 </p><p id... but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
2231 "
2232 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 18 [documen t.body, 0, document.body, 1]: second addRange() must result in the selection's l ast range being the same object we added assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "Äb̈c̈d̈ëf̈g̈ḧ
2233 Ijklmnop
2234 QrstuvwxYzabcdefGhijklmn" but got object ""
2235 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 18 [documen t.body, 0, document.body, 1]: modifying the second added range must modify the S election's last Range assert_equals: After mutating the second added Range, star tOffset of the Selection's last Range must match the added Range expected 0 but got 6
2236 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 18 [documen t.body, 0, document.body, 1]: modifying the Selection's last Range must modify t he second added Range assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match th e added Range expected 0 but got 6
2237 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 19 [foreign Doc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must no t throw exceptions or modify the range it's given
2238 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 19 [foreign Doc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must re sult in rangeCount being 1
2239 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 19 [foreign Doc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must re sult in the selection's last range having the specified endpoints
2240 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 19 [foreign Doc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must re sult in the selection's last range being the same object we added
2241 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 19 [foreign Doc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first adde d range must modify the Selection's last Range
2242 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 19 [foreign Doc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection' s last Range must modify the first added Range
2243 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 19 [foreign Doc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must d o nothing
2244 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 20 [foreign Doc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given
2245 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 20 [foreign Doc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount bei ng 1
2246 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 20 [foreign Doc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection' s last range having the specified endpoints
2247 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 20 [foreign Doc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection' s last range being the same object we added
2248 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 20 [foreign Doc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify th e Selection's last Range
2249 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 20 [foreign Doc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modi fy the first added Range
2250 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 20 [foreign Doc.head, 1, foreignDoc.head, 1]: second addRange() must do nothing
2251 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 21 [foreign Doc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given
2252 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 21 [foreign Doc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount bei ng 1
2253 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 21 [foreign Doc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection' s last range having the specified endpoints
2254 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 21 [foreign Doc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection' s last range being the same object we added
2255 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 21 [foreign Doc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify th e Selection's last Range
2256 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 21 [foreign Doc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modi fy the first added Range
2257 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 21 [foreign Doc.body, 0, foreignDoc.body, 0]: second addRange() must do nothing
2258 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 22 [paras[0 ], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the ran ge it's given
2259 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 22 [paras[0 ], 0, paras[0], 0]: first addRange() must result in rangeCount being 1
2260 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 22 [paras[0 ], 0, paras[0], 0]: first addRange() must result in the selection's last range h aving the specified endpoints
2261 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 22 [paras[0 ], 0, paras[0], 0]: first addRange() must result in the selection's last range b eing the same object we added
2262 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 22 [paras[0 ], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range
2263 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 22 [paras[0 ], 0, paras[0], 0]: modifying the Selection's last Range must modify the first a dded Range
2264 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 22 [paras[0 ], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the ra nge it's given
2265 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 22 [paras[0 ], 0, paras[0], 0]: second addRange() must result in rangeCount being 1
2266 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 22 [paras[0 ], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node <p id="a">Äb̈c̈d̈ë f̈g̈ḧ
2267 </p> but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
2268 "
2269 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 22 [paras[0 ], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added assert_equals: getRangeAt(rangeCount - 1) must re turn the same object we added expected object "" but got object ""
2270 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 22 [paras[0 ], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6
2271 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 22 [paras[0 ], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range assert_equals: After second addRange(), after mutating the Selection 's last Range, startOffset of the Selection's last Range must match the added Ra nge expected 0 but got 6
2272 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 23 [paras[0 ], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the ran ge it's given
2273 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 23 [paras[0 ], 0, paras[0], 1]: first addRange() must result in rangeCount being 1
2274 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 23 [paras[0 ], 0, paras[0], 1]: first addRange() must result in the selection's last range h aving the specified endpoints
2275 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 23 [paras[0 ], 0, paras[0], 1]: first addRange() must result in the selection's last range b eing the same object we added
2276 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 23 [paras[0 ], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range
2277 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 23 [paras[0 ], 0, paras[0], 1]: modifying the Selection's last Range must modify the first a dded Range
2278 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 23 [paras[0 ], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the ra nge it's given
2279 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 23 [paras[0 ], 0, paras[0], 1]: second addRange() must result in rangeCount being 1
2280 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 23 [paras[0 ], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node <p id="a">Äb̈c̈d̈ë f̈g̈ḧ
2281 </p> but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
2282 "
2283 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 23 [paras[0 ], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added assert_equals: getRangeAt(rangeCount - 1) must re turn the same object we added expected object "Äb̈c̈d̈ëf̈g̈ḧ
2284 " but got object ""
2285 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 23 [paras[0 ], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6
2286 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 23 [paras[0 ], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range assert_equals: After second addRange(), after mutating the Selection 's last Range, startOffset of the Selection's last Range must match the added Ra nge expected 0 but got 6
2287 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 24 [detache dPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modi fy the range it's given
2288 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 24 [detache dPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1
2289 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 24 [detache dPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's la st range having the specified endpoints
2290 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 24 [detache dPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's la st range being the same object we added
2291 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 24 [detache dPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Se lection's last Range
2292 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 24 [detache dPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify t he first added Range
2293 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 24 [detache dPara1, 0, detachedPara1, 0]: second addRange() must do nothing
2294 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 25 [detache dPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modi fy the range it's given
2295 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 25 [detache dPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1
2296 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 25 [detache dPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's la st range having the specified endpoints
2297 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 25 [detache dPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's la st range being the same object we added
2298 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 25 [detache dPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Se lection's last Range
2299 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 25 [detache dPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify t he first added Range
2300 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 25 [detache dPara1, 0, detachedPara1, 1]: second addRange() must do nothing
2301 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 26 [paras[0 ].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw except ions or modify the range it's given
2302 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 26 [paras[0 ].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeC ount being 1
2303 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 26 [paras[0 ].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the se lection's last range having the specified endpoints
2304 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 26 [paras[0 ].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the se lection's last range being the same object we added
2305 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 26 [paras[0 ].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must m odify the Selection's last Range
2306 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 26 [paras[0 ].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range m ust modify the first added Range
2307 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 26 [paras[0 ].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw excep tions or modify the range it's given
2308 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 26 [paras[0 ].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in range Count being 1
2309 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 26 [paras[0 ].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the s election's last range having the specified endpoints assert_equals: startOffset of the Selection's last Range must match the added Range expected 0 but got 6
2310 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 26 [paras[0 ].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the s election's last range being the same object we added assert_equals: getRangeAt(r angeCount - 1) must return the same object we added expected object "Äb̈c̈d̈ëf ̈g̈ḧ
2311 " but got object ""
2312 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 26 [paras[0 ].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range exp ected 0 but got 6
2313 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 26 [paras[0 ].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range m ust modify the second added Range assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range m ust match the added Range expected 0 but got 6
2314 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 27 [paras[0 ].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw except ions or modify the range it's given
2315 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 27 [paras[0 ].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeC ount being 1
2316 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 27 [paras[0 ].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the se lection's last range having the specified endpoints
2317 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 27 [paras[0 ].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the se lection's last range being the same object we added
2318 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 27 [paras[0 ].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must m odify the Selection's last Range
2319 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 27 [paras[0 ].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range m ust modify the first added Range
2320 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 27 [paras[0 ].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw excep tions or modify the range it's given
2321 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 27 [paras[0 ].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in range Count being 1
2322 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 27 [paras[0 ].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the s election's last range having the specified endpoints assert_equals: startOffset of the Selection's last Range must match the added Range expected 0 but got 6
2323 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 27 [paras[0 ].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the s election's last range being the same object we added assert_equals: getRangeAt(r angeCount - 1) must return the same object we added expected object "Äb̈c̈d̈ëf ̈g̈ḧ
2324 Ijklmnop" but got object ""
2325 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 27 [paras[0 ].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range exp ected 0 but got 6
2326 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 27 [paras[0 ].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range m ust modify the second added Range assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range m ust match the added Range expected 0 but got 6
2327 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 28 [paras[0 ].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or mod ify the range it's given
2328 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 28 [paras[0 ].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1
2329 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 28 [paras[0 ].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's l ast range having the specified endpoints
2330 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 28 [paras[0 ].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's l ast range being the same object we added
2331 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 28 [paras[0 ].firstChild, 3, paras[3], 1]: modifying the first added range must modify the S election's last Range
2332 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 28 [paras[0 ].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range
2333 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 28 [paras[0 ].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or mo dify the range it's given
2334 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 28 [paras[0 ].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1
2335 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 28 [paras[0 ].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints assert_equals: startOffset of the Sele ction's last Range must match the added Range expected 3 but got 6
2336 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 28 [paras[0 ].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "̈c̈d̈ëf̈g̈ḧ
2337 Ijklmnop
2338 QrstuvwxYzabcdef" but got object ""
2339 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 28 [paras[0 ].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, sta rtOffset of the Selection's last Range must match the added Range expected 0 but got 6
2340 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 28 [paras[0 ].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range assert_equals: After second addRange(), after mutating th e Selection's last Range, startOffset of the Selection's last Range must match t he added Range expected 0 but got 6
2341 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 29 [paras[0 ], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or mod ify the range it's given
2342 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 29 [paras[0 ], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1
2343 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 29 [paras[0 ], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's l ast range having the specified endpoints
2344 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 29 [paras[0 ], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's l ast range being the same object we added
2345 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 29 [paras[0 ], 0, paras[0].firstChild, 7]: modifying the first added range must modify the S election's last Range
2346 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 29 [paras[0 ], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range
2347 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 29 [paras[0 ], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or mo dify the range it's given
2348 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 29 [paras[0 ], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1
2349 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 29 [paras[0 ], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints assert_equals: startContainer of the S election's last Range must match the added Range expected Element node <p id="a" >Äb̈c̈d̈ëf̈g̈ḧ
2350 </p> but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
2351 "
2352 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 29 [paras[0 ], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "Äb̈c̈d" but got objec t ""
2353 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 29 [paras[0 ], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, sta rtOffset of the Selection's last Range must match the added Range expected 0 but got 6
2354 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 29 [paras[0 ], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range assert_equals: After second addRange(), after mutating th e Selection's last Range, startOffset of the Selection's last Range must match t he added Range expected 0 but got 6
2355 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 30 [testDiv , 2, paras[4], 1]: first addRange() must not throw exceptions or modify the rang e it's given
2356 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 30 [testDiv , 2, paras[4], 1]: first addRange() must result in rangeCount being 1
2357 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 30 [testDiv , 2, paras[4], 1]: first addRange() must result in the selection's last range ha ving the specified endpoints
2358 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 30 [testDiv , 2, paras[4], 1]: first addRange() must result in the selection's last range be ing the same object we added
2359 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 30 [testDiv , 2, paras[4], 1]: modifying the first added range must modify the Selection's l ast Range
2360 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 30 [testDiv , 2, paras[4], 1]: modifying the Selection's last Range must modify the first ad ded Range
2361 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 30 [testDiv , 2, paras[4], 1]: second addRange() must not throw exceptions or modify the ran ge it's given
2362 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 30 [testDiv , 2, paras[4], 1]: second addRange() must result in rangeCount being 1
2363 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 30 [testDiv , 2, paras[4], 1]: second addRange() must result in the selection's last range h aving the specified endpoints assert_equals: startContainer of the Selection's l ast Range must match the added Range expected Element node <div id="test"><p id= "a">Äb̈c̈d̈ëf̈g̈ḧ
2364 </p><p id="b" s... but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
2365 "
2366 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 30 [testDiv , 2, paras[4], 1]: second addRange() must result in the selection's last range b eing the same object we added assert_equals: getRangeAt(rangeCount - 1) must ret urn the same object we added expected object "QrstuvwxYzabcdefGhijklmn" but got object ""
2367 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 30 [testDiv , 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6
2368 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 30 [testDiv , 2, paras[4], 1]: modifying the Selection's last Range must modify the second a dded Range assert_equals: After second addRange(), after mutating the Selection' s last Range, startOffset of the Selection's last Range must match the added Ran ge expected 0 but got 6
2369 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 31 [testDiv , 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modi fy the range it's given
2370 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 31 [testDiv , 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1
2371 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 31 [testDiv , 1, paras[2].firstChild, 5]: first addRange() must result in the selection's la st range having the specified endpoints
2372 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 31 [testDiv , 1, paras[2].firstChild, 5]: first addRange() must result in the selection's la st range being the same object we added
2373 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 31 [testDiv , 1, paras[2].firstChild, 5]: modifying the first added range must modify the Se lection's last Range
2374 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 31 [testDiv , 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify t he first added Range
2375 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 31 [testDiv , 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or mod ify the range it's given
2376 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 31 [testDiv , 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1
2377 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 31 [testDiv , 1, paras[2].firstChild, 5]: second addRange() must result in the selection's l ast range having the specified endpoints assert_equals: startContainer of the Se lection's last Range must match the added Range expected Element node <div id="t est"><p id="a">Äb̈c̈d̈ëf̈g̈ḧ
2378 </p><p id="b" s... but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
2379 "
2380 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 31 [testDiv , 1, paras[2].firstChild, 5]: second addRange() must result in the selection's l ast range being the same object we added assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "Ijklmnop
2381 Qrstu" but got object ""
2382 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 31 [testDiv , 1, paras[2].firstChild, 5]: modifying the second added range must modify the S election's last Range assert_equals: After mutating the second added Range, star tOffset of the Selection's last Range must match the added Range expected 0 but got 6
2383 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 31 [testDiv , 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify t he second added Range assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match th e added Range expected 0 but got 6
2384 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 32 [documen t.documentElement, 1, document.body, 0]: first addRange() must not throw excepti ons or modify the range it's given
2385 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 32 [documen t.documentElement, 1, document.body, 0]: first addRange() must result in rangeCo unt being 1
2386 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 32 [documen t.documentElement, 1, document.body, 0]: first addRange() must result in the sel ection's last range having the specified endpoints
2387 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 32 [documen t.documentElement, 1, document.body, 0]: first addRange() must result in the sel ection's last range being the same object we added
2388 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 32 [documen t.documentElement, 1, document.body, 0]: modifying the first added range must mo dify the Selection's last Range
2389 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 32 [documen t.documentElement, 1, document.body, 0]: modifying the Selection's last Range mu st modify the first added Range
2390 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 32 [documen t.documentElement, 1, document.body, 0]: second addRange() must not throw except ions or modify the range it's given
2391 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 32 [documen t.documentElement, 1, document.body, 0]: second addRange() must result in rangeC ount being 1
2392 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 32 [documen t.documentElement, 1, document.body, 0]: second addRange() must result in the se lection's last range having the specified endpoints assert_equals: startContaine r of the Selection's last Range must match the added Range expected Element node <html><head><title>Selection.addRange() tests</title>
2393 <me... but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
2394 "
2395 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 32 [documen t.documentElement, 1, document.body, 0]: second addRange() must result in the se lection's last range being the same object we added assert_equals: getRangeAt(ra ngeCount - 1) must return the same object we added expected object "" but got ob ject ""
2396 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 32 [documen t.documentElement, 1, document.body, 0]: modifying the second added range must m odify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expe cted 0 but got 6
2397 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 32 [documen t.documentElement, 1, document.body, 0]: modifying the Selection's last Range mu st modify the second added Range assert_equals: After second addRange(), after m utating the Selection's last Range, startOffset of the Selection's last Range mu st match the added Range expected 0 but got 6
2398 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 33 [foreign Doc.documentElement, 1, foreignDoc.body, 0]: first addRange() must not throw exc eptions or modify the range it's given
2399 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 33 [foreign Doc.documentElement, 1, foreignDoc.body, 0]: first addRange() must result in ran geCount being 1
2400 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 33 [foreign Doc.documentElement, 1, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints
2401 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 33 [foreign Doc.documentElement, 1, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added
2402 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 33 [foreign Doc.documentElement, 1, foreignDoc.body, 0]: modifying the first added range mus t modify the Selection's last Range
2403 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 33 [foreign Doc.documentElement, 1, foreignDoc.body, 0]: modifying the Selection's last Rang e must modify the first added Range
2404 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 33 [foreign Doc.documentElement, 1, foreignDoc.body, 0]: second addRange() must do nothing
2405 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 34 [documen t, 0, document, 1]: first addRange() must not throw exceptions or modify the ran ge it's given
2406 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 34 [documen t, 0, document, 1]: first addRange() must result in rangeCount being 1
2407 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 34 [documen t, 0, document, 1]: first addRange() must result in the selection's last range h aving the specified endpoints
2408 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 34 [documen t, 0, document, 1]: first addRange() must result in the selection's last range b eing the same object we added
2409 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 34 [documen t, 0, document, 1]: modifying the first added range must modify the Selection's last Range
2410 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 34 [documen t, 0, document, 1]: modifying the Selection's last Range must modify the first a dded Range
2411 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 34 [documen t, 0, document, 1]: second addRange() must not throw exceptions or modify the ra nge it's given
2412 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 34 [documen t, 0, document, 1]: second addRange() must result in rangeCount being 1
2413 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 34 [documen t, 0, document, 1]: second addRange() must result in the selection's last range having the specified endpoints assert_equals: startContainer of the Selection's last Range must match the added Range expected Document node with 2 children but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
2414 "
2415 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 34 [documen t, 0, document, 1]: second addRange() must result in the selection's last range being the same object we added assert_equals: getRangeAt(rangeCount - 1) must re turn the same object we added expected object "" but got object ""
2416 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 34 [documen t, 0, document, 1]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6
2417 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 34 [documen t, 0, document, 1]: modifying the Selection's last Range must modify the second added Range assert_equals: After second addRange(), after mutating the Selection 's last Range, startOffset of the Selection's last Range must match the added Ra nge expected 0 but got 6
2418 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 35 [documen t, 0, document, 2]: first addRange() must not throw exceptions or modify the ran ge it's given
2419 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 35 [documen t, 0, document, 2]: first addRange() must result in rangeCount being 1
2420 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 35 [documen t, 0, document, 2]: first addRange() must result in the selection's last range h aving the specified endpoints
2421 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 35 [documen t, 0, document, 2]: first addRange() must result in the selection's last range b eing the same object we added
2422 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 35 [documen t, 0, document, 2]: modifying the first added range must modify the Selection's last Range
2423 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 35 [documen t, 0, document, 2]: modifying the Selection's last Range must modify the first a dded Range
2424 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 35 [documen t, 0, document, 2]: second addRange() must not throw exceptions or modify the ra nge it's given
2425 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 35 [documen t, 0, document, 2]: second addRange() must result in rangeCount being 1
2426 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 35 [documen t, 0, document, 2]: second addRange() must result in the selection's last range having the specified endpoints assert_equals: startContainer of the Selection's last Range must match the added Range expected Document node with 2 children but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
2427 "
2428 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 35 [documen t, 0, document, 2]: second addRange() must result in the selection's last range being the same object we added assert_equals: getRangeAt(rangeCount - 1) must re turn the same object we added expected object "Selection.addRange() tests
2429
2430 Äb̈c̈d̈ëf̈g̈ḧ
2431 Ijklmnop
2432 QrstuvwxYzabcdefGhijklmn
2433
2434
2435
2436
2437
2438 "use strict";
2439
2440 testAddRangeSubSet(28, 32);
2441 testDiv.style.display = "none";
2442 " but got object ""
2443 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 35 [documen t, 0, document, 2]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6
2444 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 35 [documen t, 0, document, 2]: modifying the Selection's last Range must modify the second added Range assert_equals: After second addRange(), after mutating the Selection 's last Range, startOffset of the Selection's last Range must match the added Ra nge expected 0 but got 6
2445 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 36 [documen t, 1, document, 2]: first addRange() must not throw exceptions or modify the ran ge it's given
2446 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 36 [documen t, 1, document, 2]: first addRange() must result in rangeCount being 1
2447 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 36 [documen t, 1, document, 2]: first addRange() must result in the selection's last range h aving the specified endpoints
2448 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 36 [documen t, 1, document, 2]: first addRange() must result in the selection's last range b eing the same object we added
2449 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 36 [documen t, 1, document, 2]: modifying the first added range must modify the Selection's last Range
2450 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 36 [documen t, 1, document, 2]: modifying the Selection's last Range must modify the first a dded Range
2451 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 36 [documen t, 1, document, 2]: second addRange() must not throw exceptions or modify the ra nge it's given
2452 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 36 [documen t, 1, document, 2]: second addRange() must result in rangeCount being 1
2453 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 36 [documen t, 1, document, 2]: second addRange() must result in the selection's last range having the specified endpoints assert_equals: startContainer of the Selection's last Range must match the added Range expected Document node with 2 children but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
2454 "
2455 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 36 [documen t, 1, document, 2]: second addRange() must result in the selection's last range being the same object we added assert_equals: getRangeAt(rangeCount - 1) must re turn the same object we added expected object "Selection.addRange() tests
2456
2457 Äb̈c̈d̈ëf̈g̈ḧ
2458 Ijklmnop
2459 QrstuvwxYzabcdefGhijklmn
2460
2461
2462
2463
2464
2465 "use strict";
2466
2467 testAddRangeSubSet(28, 32);
2468 testDiv.style.display = "none";
2469 " but got object ""
2470 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 36 [documen t, 1, document, 2]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6
2471 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 36 [documen t, 1, document, 2]: modifying the Selection's last Range must modify the second added Range assert_equals: After second addRange(), after mutating the Selection 's last Range, startOffset of the Selection's last Range must match the added Ra nge expected 0 but got 6
2472 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 37 [testDiv , 0, comment, 5]: first addRange() must not throw exceptions or modify the range it's given
2473 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 37 [testDiv , 0, comment, 5]: first addRange() must result in rangeCount being 1
2474 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 37 [testDiv , 0, comment, 5]: first addRange() must result in the selection's last range hav ing the specified endpoints
2475 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 37 [testDiv , 0, comment, 5]: first addRange() must result in the selection's last range bei ng the same object we added
2476 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 37 [testDiv , 0, comment, 5]: modifying the first added range must modify the Selection's la st Range
2477 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 37 [testDiv , 0, comment, 5]: modifying the Selection's last Range must modify the first add ed Range
2478 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 37 [testDiv , 0, comment, 5]: second addRange() must not throw exceptions or modify the rang e it's given
2479 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 37 [testDiv , 0, comment, 5]: second addRange() must result in rangeCount being 1
2480 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 37 [testDiv , 0, comment, 5]: second addRange() must result in the selection's last range ha ving the specified endpoints assert_equals: startContainer of the Selection's la st Range must match the added Range expected Element node <div id="test"><p id=" a">Äb̈c̈d̈ëf̈g̈ḧ
2481 </p><p id="b" s... but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
2482 "
2483 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 37 [testDiv , 0, comment, 5]: second addRange() must result in the selection's last range be ing the same object we added assert_equals: getRangeAt(rangeCount - 1) must retu rn the same object we added expected object "Äb̈c̈d̈ëf̈g̈ḧ
2484 Ijklmnop
2485 QrstuvwxYzabcdefGhijklmn" but got object ""
2486 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 37 [testDiv , 0, comment, 5]: modifying the second added range must modify the Selection's l ast Range assert_equals: After mutating the second added Range, startOffset of t he Selection's last Range must match the added Range expected 0 but got 6
2487 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 37 [testDiv , 0, comment, 5]: modifying the Selection's last Range must modify the second ad ded Range assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Rang e expected 0 but got 6
2488 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 38 [paras[2 ].firstChild, 4, comment, 2]: first addRange() must not throw exceptions or modi fy the range it's given
2489 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 38 [paras[2 ].firstChild, 4, comment, 2]: first addRange() must result in rangeCount being 1
2490 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 38 [paras[2 ].firstChild, 4, comment, 2]: first addRange() must result in the selection's la st range having the specified endpoints
2491 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 38 [paras[2 ].firstChild, 4, comment, 2]: first addRange() must result in the selection's la st range being the same object we added
2492 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 38 [paras[2 ].firstChild, 4, comment, 2]: modifying the first added range must modify the Se lection's last Range
2493 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 38 [paras[2 ].firstChild, 4, comment, 2]: modifying the Selection's last Range must modify t he first added Range
2494 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 38 [paras[2 ].firstChild, 4, comment, 2]: second addRange() must not throw exceptions or mod ify the range it's given
2495 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 38 [paras[2 ].firstChild, 4, comment, 2]: second addRange() must result in rangeCount being 1
2496 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 38 [paras[2 ].firstChild, 4, comment, 2]: second addRange() must result in the selection's l ast range having the specified endpoints assert_equals: startContainer of the Se lection's last Range must match the added Range expected Text node "Qrstuvwx" bu t got Text node "Äb̈c̈d̈ëf̈g̈ḧ
2497 "
2498 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 38 [paras[2 ].firstChild, 4, comment, 2]: second addRange() must result in the selection's l ast range being the same object we added assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "uvwxYzabcdefGhijklmn" b ut got object ""
2499 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 38 [paras[2 ].firstChild, 4, comment, 2]: modifying the second added range must modify the S election's last Range assert_equals: After mutating the second added Range, star tOffset of the Selection's last Range must match the added Range expected 0 but got 6
2500 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 38 [paras[2 ].firstChild, 4, comment, 2]: modifying the Selection's last Range must modify t he second added Range assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match th e added Range expected 0 but got 6
2501 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 39 [paras[3 ], 1, comment, 8]: first addRange() must not throw exceptions or modify the rang e it's given
2502 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 39 [paras[3 ], 1, comment, 8]: first addRange() must result in rangeCount being 1
2503 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 39 [paras[3 ], 1, comment, 8]: first addRange() must result in the selection's last range ha ving the specified endpoints
2504 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 39 [paras[3 ], 1, comment, 8]: first addRange() must result in the selection's last range be ing the same object we added
2505 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 39 [paras[3 ], 1, comment, 8]: modifying the first added range must modify the Selection's l ast Range
2506 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 39 [paras[3 ], 1, comment, 8]: modifying the Selection's last Range must modify the first ad ded Range
2507 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 39 [paras[3 ], 1, comment, 8]: second addRange() must not throw exceptions or modify the ran ge it's given
2508 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 39 [paras[3 ], 1, comment, 8]: second addRange() must result in rangeCount being 1
2509 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 39 [paras[3 ], 1, comment, 8]: second addRange() must result in the selection's last range h aving the specified endpoints assert_equals: startContainer of the Selection's l ast Range must match the added Range expected Element node <p id="d" style="disp lay:none">Yzabcdef</p> but got Text node "Äb̈c̈d̈ëf̈g̈ḧ
2510 "
2511 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 39 [paras[3 ], 1, comment, 8]: second addRange() must result in the selection's last range b eing the same object we added assert_equals: getRangeAt(rangeCount - 1) must ret urn the same object we added expected object "Ghijklmn" but got object ""
2512 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 39 [paras[3 ], 1, comment, 8]: modifying the second added range must modify the Selection's last Range assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6
2513 FAIL Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 39 [paras[3 ], 1, comment, 8]: modifying the Selection's last Range must modify the second a dded Range assert_equals: After second addRange(), after mutating the Selection' s last Range, startOffset of the Selection's last Range must match the added Ran ge expected 0 but got 6
2514 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 40 [foreign Doc, 0, foreignDoc, 0]: first addRange() must not throw exceptions or modify the range it's given
2515 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 40 [foreign Doc, 0, foreignDoc, 0]: first addRange() must result in rangeCount being 1
2516 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 40 [foreign Doc, 0, foreignDoc, 0]: first addRange() must result in the selection's last ran ge having the specified endpoints
2517 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 40 [foreign Doc, 0, foreignDoc, 0]: first addRange() must result in the selection's last ran ge being the same object we added
2518 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 40 [foreign Doc, 0, foreignDoc, 0]: modifying the first added range must modify the Selectio n's last Range
2519 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 40 [foreign Doc, 0, foreignDoc, 0]: modifying the Selection's last Range must modify the fir st added Range
2520 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 40 [foreign Doc, 0, foreignDoc, 0]: second addRange() must do nothing
2521 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 41 [foreign Doc, 1, foreignComment, 2]: first addRange() must not throw exceptions or modify the range it's given
2522 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 41 [foreign Doc, 1, foreignComment, 2]: first addRange() must result in rangeCount being 1
2523 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 41 [foreign Doc, 1, foreignComment, 2]: first addRange() must result in the selection's last range having the specified endpoints
2524 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 41 [foreign Doc, 1, foreignComment, 2]: first addRange() must result in the selection's last range being the same object we added
2525 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 41 [foreign Doc, 1, foreignComment, 2]: modifying the first added range must modify the Sele ction's last Range
2526 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 41 [foreign Doc, 1, foreignComment, 2]: modifying the Selection's last Range must modify the first added Range
2527 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 41 [foreign Doc, 1, foreignComment, 2]: second addRange() must do nothing
2528 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 42 [foreign Doc.body, 0, foreignTextNode, 36]: first addRange() must not throw exceptions or modify the range it's given
2529 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 42 [foreign Doc.body, 0, foreignTextNode, 36]: first addRange() must result in rangeCount be ing 1
2530 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 42 [foreign Doc.body, 0, foreignTextNode, 36]: first addRange() must result in the selection 's last range having the specified endpoints
2531 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 42 [foreign Doc.body, 0, foreignTextNode, 36]: first addRange() must result in the selection 's last range being the same object we added
2532 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 42 [foreign Doc.body, 0, foreignTextNode, 36]: modifying the first added range must modify t he Selection's last Range
2533 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 42 [foreign Doc.body, 0, foreignTextNode, 36]: modifying the Selection's last Range must mod ify the first added Range
2534 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 42 [foreign Doc.body, 0, foreignTextNode, 36]: second addRange() must do nothing
2535 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 43 [xmlDoc, 0, xmlDoc, 0]: first addRange() must not throw exceptions or modify the range i t's given
2536 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 43 [xmlDoc, 0, xmlDoc, 0]: first addRange() must result in rangeCount being 1
2537 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 43 [xmlDoc, 0, xmlDoc, 0]: first addRange() must result in the selection's last range havin g the specified endpoints
2538 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 43 [xmlDoc, 0, xmlDoc, 0]: first addRange() must result in the selection's last range being the same object we added
2539 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 43 [xmlDoc, 0, xmlDoc, 0]: modifying the first added range must modify the Selection's last Range
2540 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 43 [xmlDoc, 0, xmlDoc, 0]: modifying the Selection's last Range must modify the first added Range
2541 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 43 [xmlDoc, 0, xmlDoc, 0]: second addRange() must do nothing
2542 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 44 [xmlDoc, 1, xmlComment, 0]: first addRange() must not throw exceptions or modify the ran ge it's given
2543 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 44 [xmlDoc, 1, xmlComment, 0]: first addRange() must result in rangeCount being 1
2544 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 44 [xmlDoc, 1, xmlComment, 0]: first addRange() must result in the selection's last range h aving the specified endpoints
2545 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 44 [xmlDoc, 1, xmlComment, 0]: first addRange() must result in the selection's last range b eing the same object we added
2546 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 44 [xmlDoc, 1, xmlComment, 0]: modifying the first added range must modify the Selection's last Range
2547 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 44 [xmlDoc, 1, xmlComment, 0]: modifying the Selection's last Range must modify the first a dded Range
2548 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 44 [xmlDoc, 1, xmlComment, 0]: second addRange() must do nothing
2549 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 45 [detache dTextNode, 0, detachedTextNode, 8]: first addRange() must not throw exceptions o r modify the range it's given
2550 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 45 [detache dTextNode, 0, detachedTextNode, 8]: first addRange() must result in rangeCount b eing 1
2551 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 45 [detache dTextNode, 0, detachedTextNode, 8]: first addRange() must result in the selectio n's last range having the specified endpoints
2552 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 45 [detache dTextNode, 0, detachedTextNode, 8]: first addRange() must result in the selectio n's last range being the same object we added
2553 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 45 [detache dTextNode, 0, detachedTextNode, 8]: modifying the first added range must modify the Selection's last Range
2554 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 45 [detache dTextNode, 0, detachedTextNode, 8]: modifying the Selection's last Range must mo dify the first added Range
2555 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 45 [detache dTextNode, 0, detachedTextNode, 8]: second addRange() must do nothing
2556 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 46 [detache dForeignTextNode, 7, detachedForeignTextNode, 7]: first addRange() must not thro w exceptions or modify the range it's given
2557 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 46 [detache dForeignTextNode, 7, detachedForeignTextNode, 7]: first addRange() must result i n rangeCount being 1
2558 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 46 [detache dForeignTextNode, 7, detachedForeignTextNode, 7]: first addRange() must result i n the selection's last range having the specified endpoints
2559 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 46 [detache dForeignTextNode, 7, detachedForeignTextNode, 7]: first addRange() must result i n the selection's last range being the same object we added
2560 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 46 [detache dForeignTextNode, 7, detachedForeignTextNode, 7]: modifying the first added rang e must modify the Selection's last Range
2561 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 46 [detache dForeignTextNode, 7, detachedForeignTextNode, 7]: modifying the Selection's last Range must modify the first added Range
2562 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 46 [detache dForeignTextNode, 7, detachedForeignTextNode, 7]: second addRange() must do noth ing
2563 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 47 [detache dForeignTextNode, 0, detachedForeignTextNode, 8]: first addRange() must not thro w exceptions or modify the range it's given
2564 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 47 [detache dForeignTextNode, 0, detachedForeignTextNode, 8]: first addRange() must result i n rangeCount being 1
2565 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 47 [detache dForeignTextNode, 0, detachedForeignTextNode, 8]: first addRange() must result i n the selection's last range having the specified endpoints
2566 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 47 [detache dForeignTextNode, 0, detachedForeignTextNode, 8]: first addRange() must result i n the selection's last range being the same object we added
2567 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 47 [detache dForeignTextNode, 0, detachedForeignTextNode, 8]: modifying the first added rang e must modify the Selection's last Range
2568 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 47 [detache dForeignTextNode, 0, detachedForeignTextNode, 8]: modifying the Selection's last Range must modify the first added Range
2569 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 47 [detache dForeignTextNode, 0, detachedForeignTextNode, 8]: second addRange() must do noth ing
2570 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 48 [detache dXmlTextNode, 7, detachedXmlTextNode, 7]: first addRange() must not throw except ions or modify the range it's given
2571 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 48 [detache dXmlTextNode, 7, detachedXmlTextNode, 7]: first addRange() must result in rangeC ount being 1
2572 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 48 [detache dXmlTextNode, 7, detachedXmlTextNode, 7]: first addRange() must result in the se lection's last range having the specified endpoints
2573 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 48 [detache dXmlTextNode, 7, detachedXmlTextNode, 7]: first addRange() must result in the se lection's last range being the same object we added
2574 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 48 [detache dXmlTextNode, 7, detachedXmlTextNode, 7]: modifying the first added range must m odify the Selection's last Range
2575 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 48 [detache dXmlTextNode, 7, detachedXmlTextNode, 7]: modifying the Selection's last Range m ust modify the first added Range
2576 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 48 [detache dXmlTextNode, 7, detachedXmlTextNode, 7]: second addRange() must do nothing
2577 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 49 [detache dXmlTextNode, 0, detachedXmlTextNode, 8]: first addRange() must not throw except ions or modify the range it's given
2578 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 49 [detache dXmlTextNode, 0, detachedXmlTextNode, 8]: first addRange() must result in rangeC ount being 1
2579 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 49 [detache dXmlTextNode, 0, detachedXmlTextNode, 8]: first addRange() must result in the se lection's last range having the specified endpoints
2580 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 49 [detache dXmlTextNode, 0, detachedXmlTextNode, 8]: first addRange() must result in the se lection's last range being the same object we added
2581 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 49 [detache dXmlTextNode, 0, detachedXmlTextNode, 8]: modifying the first added range must m odify the Selection's last Range
2582 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 49 [detache dXmlTextNode, 0, detachedXmlTextNode, 8]: modifying the Selection's last Range m ust modify the first added Range
2583 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 49 [detache dXmlTextNode, 0, detachedXmlTextNode, 8]: second addRange() must do nothing
2584 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 50 [detache dComment, 3, detachedComment, 4]: first addRange() must not throw exceptions or modify the range it's given
2585 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 50 [detache dComment, 3, detachedComment, 4]: first addRange() must result in rangeCount bei ng 1
2586 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 50 [detache dComment, 3, detachedComment, 4]: first addRange() must result in the selection' s last range having the specified endpoints
2587 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 50 [detache dComment, 3, detachedComment, 4]: first addRange() must result in the selection' s last range being the same object we added
2588 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 50 [detache dComment, 3, detachedComment, 4]: modifying the first added range must modify th e Selection's last Range
2589 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 50 [detache dComment, 3, detachedComment, 4]: modifying the Selection's last Range must modi fy the first added Range
2590 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 50 [detache dComment, 3, detachedComment, 4]: second addRange() must do nothing
2591 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 51 [detache dComment, 5, detachedComment, 5]: first addRange() must not throw exceptions or modify the range it's given
2592 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 51 [detache dComment, 5, detachedComment, 5]: first addRange() must result in rangeCount bei ng 1
2593 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 51 [detache dComment, 5, detachedComment, 5]: first addRange() must result in the selection' s last range having the specified endpoints
2594 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 51 [detache dComment, 5, detachedComment, 5]: first addRange() must result in the selection' s last range being the same object we added
2595 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 51 [detache dComment, 5, detachedComment, 5]: modifying the first added range must modify th e Selection's last Range
2596 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 51 [detache dComment, 5, detachedComment, 5]: modifying the Selection's last Range must modi fy the first added Range
2597 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 51 [detache dComment, 5, detachedComment, 5]: second addRange() must do nothing
2598 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 52 [detache dForeignComment, 0, detachedForeignComment, 1]: first addRange() must not throw exceptions or modify the range it's given
2599 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 52 [detache dForeignComment, 0, detachedForeignComment, 1]: first addRange() must result in rangeCount being 1
2600 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 52 [detache dForeignComment, 0, detachedForeignComment, 1]: first addRange() must result in the selection's last range having the specified endpoints
2601 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 52 [detache dForeignComment, 0, detachedForeignComment, 1]: first addRange() must result in the selection's last range being the same object we added
2602 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 52 [detache dForeignComment, 0, detachedForeignComment, 1]: modifying the first added range must modify the Selection's last Range
2603 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 52 [detache dForeignComment, 0, detachedForeignComment, 1]: modifying the Selection's last R ange must modify the first added Range
2604 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 52 [detache dForeignComment, 0, detachedForeignComment, 1]: second addRange() must do nothin g
2605 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 53 [detache dForeignComment, 4, detachedForeignComment, 4]: first addRange() must not throw exceptions or modify the range it's given
2606 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 53 [detache dForeignComment, 4, detachedForeignComment, 4]: first addRange() must result in rangeCount being 1
2607 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 53 [detache dForeignComment, 4, detachedForeignComment, 4]: first addRange() must result in the selection's last range having the specified endpoints
2608 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 53 [detache dForeignComment, 4, detachedForeignComment, 4]: first addRange() must result in the selection's last range being the same object we added
2609 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 53 [detache dForeignComment, 4, detachedForeignComment, 4]: modifying the first added range must modify the Selection's last Range
2610 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 53 [detache dForeignComment, 4, detachedForeignComment, 4]: modifying the Selection's last R ange must modify the first added Range
2611 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 53 [detache dForeignComment, 4, detachedForeignComment, 4]: second addRange() must do nothin g
2612 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 54 [detache dXmlComment, 2, detachedXmlComment, 6]: first addRange() must not throw exceptio ns or modify the range it's given
2613 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 54 [detache dXmlComment, 2, detachedXmlComment, 6]: first addRange() must result in rangeCou nt being 1
2614 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 54 [detache dXmlComment, 2, detachedXmlComment, 6]: first addRange() must result in the sele ction's last range having the specified endpoints
2615 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 54 [detache dXmlComment, 2, detachedXmlComment, 6]: first addRange() must result in the sele ction's last range being the same object we added
2616 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 54 [detache dXmlComment, 2, detachedXmlComment, 6]: modifying the first added range must mod ify the Selection's last Range
2617 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 54 [detache dXmlComment, 2, detachedXmlComment, 6]: modifying the Selection's last Range mus t modify the first added Range
2618 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 54 [detache dXmlComment, 2, detachedXmlComment, 6]: second addRange() must do nothing
2619 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 55 [docfrag , 0, docfrag, 0]: first addRange() must not throw exceptions or modify the range it's given
2620 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 55 [docfrag , 0, docfrag, 0]: first addRange() must result in rangeCount being 1
2621 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 55 [docfrag , 0, docfrag, 0]: first addRange() must result in the selection's last range hav ing the specified endpoints
2622 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 55 [docfrag , 0, docfrag, 0]: first addRange() must result in the selection's last range bei ng the same object we added
2623 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 55 [docfrag , 0, docfrag, 0]: modifying the first added range must modify the Selection's la st Range
2624 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 55 [docfrag , 0, docfrag, 0]: modifying the Selection's last Range must modify the first add ed Range
2625 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 55 [docfrag , 0, docfrag, 0]: second addRange() must do nothing
2626 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 56 [foreign Docfrag, 0, foreignDocfrag, 0]: first addRange() must not throw exceptions or mo dify the range it's given
2627 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 56 [foreign Docfrag, 0, foreignDocfrag, 0]: first addRange() must result in rangeCount being 1
2628 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 56 [foreign Docfrag, 0, foreignDocfrag, 0]: first addRange() must result in the selection's last range having the specified endpoints
2629 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 56 [foreign Docfrag, 0, foreignDocfrag, 0]: first addRange() must result in the selection's last range being the same object we added
2630 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 56 [foreign Docfrag, 0, foreignDocfrag, 0]: modifying the first added range must modify the Selection's last Range
2631 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 56 [foreign Docfrag, 0, foreignDocfrag, 0]: modifying the Selection's last Range must modify the first added Range
2632 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 56 [foreign Docfrag, 0, foreignDocfrag, 0]: second addRange() must do nothing
2633 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 57 [xmlDocf rag, 0, xmlDocfrag, 0]: first addRange() must not throw exceptions or modify the range it's given
2634 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 57 [xmlDocf rag, 0, xmlDocfrag, 0]: first addRange() must result in rangeCount being 1
2635 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 57 [xmlDocf rag, 0, xmlDocfrag, 0]: first addRange() must result in the selection's last ran ge having the specified endpoints
2636 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 57 [xmlDocf rag, 0, xmlDocfrag, 0]: first addRange() must result in the selection's last ran ge being the same object we added
2637 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 57 [xmlDocf rag, 0, xmlDocfrag, 0]: modifying the first added range must modify the Selectio n's last Range
2638 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 57 [xmlDocf rag, 0, xmlDocfrag, 0]: modifying the Selection's last Range must modify the fir st added Range
2639 PASS Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 57 [xmlDocf rag, 0, xmlDocfrag, 0]: second addRange() must do nothing
2640 Harness: the test ran to completion.
2641
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698