| <!doctype html> |
| <meta charset=utf-8> |
| <title></title> |
| <script src=/resources/testharness.js></script> |
| <script src=/resources/testharnessreport.js></script> |
| <div id="testDiv" onclick="result1 = remove; result2 = this.remove;"></div> |
| <script> |
| var result1; |
| var result2; |
| var unscopables = [ |
| "before", |
| "after", |
| "replaceWith", |
| "remove", |
| "prepend", |
| "append" |
| ]; |
| for (var i in unscopables) { |
| var name = unscopables[i]; |
| window[name] = "Hello there"; |
| result1 = result2 = undefined; |
| test(function () { |
| assert_true(Element.prototype[Symbol.unscopables][name]); |
| var div = document.querySelector('#testDiv'); |
| div.setAttribute( |
| "onclick", "result1 = " + name + "; result2 = this." + name + ";"); |
| div.dispatchEvent(new Event("click")); |
| assert_equals(typeof result1, "string"); |
| assert_equals(typeof result2, "function"); |
| }, name + "() should be unscopable"); |
| } |
| </script> |