| OLD | NEW |
| (Empty) |
| 1 <!DOCTYPE html> | |
| 2 <html> | |
| 3 <head> | |
| 4 <script src="../../../resources/js-test.js"></script> | |
| 5 </head> | |
| 6 <body> | |
| 7 <!-- hidden area to create the ranges being tested --> | |
| 8 <div style="visibility: hidden"> | |
| 9 <div id=a1>a1 | |
| 10 <div id=b1>b1</div> | |
| 11 </div> | |
| 12 </div> | |
| 13 | |
| 14 <script> | |
| 15 function execute(method) { | |
| 16 return '"InvalidStateError: Failed to execute \'' + method + '\' on
\'Range\': The range has no container. Perhaps \'detach()\' has been invoked on
this object?"'; | |
| 17 } | |
| 18 function read(property) { | |
| 19 return '"InvalidStateError: Failed to read the \'' + property + '\'
property from \'Range\': The range has no container. Perhaps \'detach()\' has be
en invoked on this object?"'; | |
| 20 } | |
| 21 | |
| 22 description("A variety of Range methods should throw if called on a deta
ched range."); | |
| 23 var range = document.createRange(); | |
| 24 range.selectNode(document.getElementById("a1")); | |
| 25 range.detach(); | |
| 26 | |
| 27 shouldThrow("range.cloneContents()", execute("cloneContents")); | |
| 28 shouldThrow("range.cloneRange()", execute("cloneRange")); | |
| 29 shouldThrow("range.collapsed", read("collapsed")); | |
| 30 shouldThrow("range.commonAncestorContainer", read("commonAncestorContain
er")); | |
| 31 shouldThrow("range.compareBoundaryPoints(Range.START_TO_END, range)", ex
ecute("compareBoundaryPoints")); | |
| 32 shouldThrow("range.comparePoint(document.getElementById('b1'), 1)", exec
ute("comparePoint")); | |
| 33 shouldThrow("range.createContextualFragment('p')", execute("createContex
tualFragment")); | |
| 34 shouldThrow("range.deleteContents()", execute("deleteContents")); | |
| 35 shouldThrow("range.detach()", execute("detach")); | |
| 36 shouldThrow("range.endContainer", read("endContainer")); | |
| 37 shouldThrow("range.endOffset", read("endOffset")); | |
| 38 shouldThrow("range.extractContents()", execute("extractContents")); | |
| 39 shouldThrow("range.insertNode(document.getElementById('b1'))", execute("
insertNode")); | |
| 40 shouldThrow("range.intersectsNode(document.getElementById('b1'))", execu
te("intersectsNode")); | |
| 41 shouldThrow("range.isPointInRange(document.getElementById('b1'), 0)", ex
ecute("isPointInRange")); | |
| 42 shouldThrow("range.selectNode(document.getElementById('b1'))", execute("
selectNode")); | |
| 43 shouldThrow("range.selectNodeContents(document.getElementById('b1'))", e
xecute("selectNodeContents")); | |
| 44 shouldThrow("range.setEnd(document.getElementById('b1'), 0)", execute("s
etEnd")); | |
| 45 shouldThrow("range.setStart(document.getElementById('b1'), 0)", execute(
"setStart")); | |
| 46 shouldThrow("range.startContainer", read("startContainer")); | |
| 47 shouldThrow("range.startOffset", read("startOffset")); | |
| 48 shouldThrow("range.surroundContents(document.getElementById('b1'))", exe
cute("surroundContents")); | |
| 49 shouldThrow("range.toString()", execute("toString")); | |
| 50 </script> | |
| 51 </body> | |
| 52 </html> | |
| OLD | NEW |