opener-multiple.html (1400B)
1 <!doctype html> 2 <html> 3 <head> 4 <title>Auxiliary Browsing Contexts: window.opener, multiple</title> 5 <script src="/resources/testharness.js"></script> 6 <script src="/resources/testharnessreport.js"></script> 7 <script src="/common/PrefixedLocalStorage.js"></script> 8 </head> 9 <body> 10 <div id="log"></div> 11 <script> 12 var prefixedLocalStorage; 13 setup (() => prefixedLocalStorage = new PrefixedLocalStorageTest()); 14 async_test(t => { 15 t.add_cleanup (() => prefixedLocalStorage.cleanup()); 16 var a = document.createElement('a'); 17 a.href = prefixedLocalStorage.url('resources/multiple-opener.html'); 18 a.target = 'multipleOpener'; 19 window.name = 'topOpener'; 20 document.body.appendChild(a); 21 window.addEventListener('message', t.step_func_done(e => { 22 var aux1 = e.data.aux1; // First opened context 23 var aux2 = e.data.aux2; // Context opened by first-opened context 24 assert_equals(aux1.name, 'multipleOpener'); 25 assert_equals(aux1.openerName, window.name); 26 assert_equals(aux1.isTop, true); 27 assert_equals(aux2.name, 'multipleOpenee'); 28 assert_equals(aux2.openerName, aux1.name); 29 assert_equals(aux2.isTop, true); 30 })); 31 a.click(); 32 }, 'An auxiliary browsing context should be able to open another auxiliary browsing context'); 33 </script> 34 </body> 35 </html>