| <body> |
| <pre id="error-log"></pre> |
| <span id="container" style="color: green"> |
| </span> |
| <div style="display: none"> |
| <span id="1"> |
| 1 (black) |
| </span> |
| <span id="2"> |
| 2 (green) |
| </span> |
| <span id="3"> |
| 3 (green) |
| </span> |
| <span id="4"> |
| 4 (black) |
| </span> |
| </div> |
| <span id="status" style="color: red"> |
| FAILURE |
| </span> |
| </body> |
| <script> |
| if (window.testRunner) |
| testRunner.dumpAsText(); |
| |
| // verify all standard cases |
| document.getElementById("container").insertAdjacentElement("beforeBegin", document.getElementById("1")); |
| document.getElementById("container").insertAdjacentElement("afterBegin", document.getElementById("2")); |
| document.getElementById("container").insertAdjacentElement("beforeEnd", document.getElementById("3")); |
| document.getElementById("container").insertAdjacentElement("afterEnd", document.getElementById("4")); |
| |
| function assertThrows(func) { |
| var testPassed = false; |
| try { |
| func(); |
| document.getElementById("error-log").textContent += "Expected exception missing.\n"; |
| } catch (e) { |
| document.getElementById("error-log").textContent += "Caught expected exception: " + e + "\n"; |
| testPassed = true; |
| } |
| return testPassed; |
| } |
| |
| // check that exceptions are thrown as required |
| var passes = true; |
| passes = assertThrows(function() { |
| // should throw SyntaxError |
| document.getElementById("container").insertAdjacentElement("blah", document.getElementById("1")); |
| }) && passes; |
| passes = assertThrows(function() { |
| // should throw TypeError |
| document.getElementById("container").insertAdjacentElement("beforeEnd", null); |
| }) && passes; |
| passes = assertThrows(function() { |
| // should throw TypeError |
| document.getElementById("container").insertAdjacentElement("beforeEnd"); |
| }) && passes; |
| passes = assertThrows(function() { |
| // should throw TypeError |
| document.getElementById("container").insertAdjacentElement(); |
| }) && passes; |
| |
| var elt = document.createElement("div"); |
| passes = passes && (elt.insertAdjacentElement("beforeBegin", document.createElement("p")) == null); |
| if (passes) { |
| document.getElementById("status").style.color = "green"; |
| document.getElementById("status").innerHTML = "<br><br>PASS"; |
| } |
| </script> |