OLD | NEW |
1 <!doctype html> | 1 <!doctype html> |
2 <meta charset=utf-8> | 2 <meta charset=utf-8> |
3 <title></title> | 3 <title></title> |
4 <script src=/resources/testharness.js></script> | 4 <script src=/resources/testharness.js></script> |
5 <script src=/resources/testharnessreport.js></script> | 5 <script src=/resources/testharnessreport.js></script> |
6 <div id="testDiv" onclick="result1 = remove; result2 = this.remove;"></div> | 6 <div id="testDiv" onclick="result1 = remove; result2 = this.remove;"></div> |
7 <script> | 7 <script> |
8 var remove = "Hello there"; | |
9 var result1; | 8 var result1; |
10 var result2; | 9 var result2; |
11 test(function() { | 10 var unscopables = [ |
12 assert_true(Element.prototype[Symbol.unscopables].remove); | 11 "before", |
13 var div = document.querySelector("#testDiv"); | 12 "after", |
14 div.dispatchEvent(new Event("click")); | 13 "replaceWith", |
15 assert_equals(typeof result1, "string"); | 14 "remove", |
16 assert_equals(typeof result2, "function"); | 15 "prepend", |
17 }, "remove() should be unscopable") | 16 "append" |
| 17 ]; |
| 18 for (var i in unscopables) { |
| 19 var name = unscopables[i]; |
| 20 window[name] = "Hello there"; |
| 21 result1 = result2 = undefined; |
| 22 test(function () { |
| 23 assert_true(Element.prototype[Symbol.unscopables][name]); |
| 24 var div = document.querySelector('#testDiv'); |
| 25 div.setAttribute( |
| 26 "onclick", "result1 = " + name + "; result2 = this." + name + ";"); |
| 27 div.dispatchEvent(new Event("click")); |
| 28 assert_equals(typeof result1, "string"); |
| 29 assert_equals(typeof result2, "function"); |
| 30 }, name + "() should be unscopable"); |
| 31 } |
18 </script> | 32 </script> |
OLD | NEW |