OLD | NEW |
1 function create_window_in_test(t) { | 1 function create_window_in_test(t) { |
2 let p = new Promise((resolve) => { | 2 let p = new Promise((resolve) => { |
3 let f = document.createElement('iframe'); | 3 let f = document.createElement('iframe'); |
4 f.srcdoc = ''; | 4 f.srcdoc = ''; |
5 f.onload = (event) => { | 5 f.onload = (event) => { |
6 let w = f.contentWindow; | 6 let w = f.contentWindow; |
7 t.add_cleanup(() => f.remove()); | 7 t.add_cleanup(() => f.remove()); |
8 resolve(w); | 8 resolve(w); |
9 }; | 9 }; |
10 document.body.appendChild(f); | 10 document.body.appendChild(f); |
11 }); | 11 }); |
12 return p; | 12 return p; |
13 } | 13 } |
14 | 14 |
15 function test_with_window(f, name) { | 15 function test_with_window(f, name) { |
16 promise_test((t) => { | 16 promise_test((t) => { |
17 return create_window_in_test(t) | 17 return create_window_in_test(t) |
18 .then((w) => { | 18 .then((w) => { |
19 f(w); | 19 f(w); |
20 }); | 20 }); |
21 }, name); | 21 }, name); |
22 } | 22 } |
| 23 |
| 24 function assert_throws_dom_exception(global_context, code, func, description) { |
| 25 let exception; |
| 26 assert_throws(code, () => { |
| 27 try { |
| 28 func.call(this); |
| 29 } catch(e) { |
| 30 exception = e; |
| 31 throw e; |
| 32 } |
| 33 }, description); |
| 34 assert_true(exception instanceof global_context.DOMException, 'DOMException on
the appropriate window'); |
| 35 } |
OLD | NEW |