test_window_open_from_closing.html (1095B)
1 <!DOCTYPE html> 2 <html> 3 <head> 4 <title>window.open from a window being closed</title> 5 <script src="/tests/SimpleTest/SimpleTest.js"></script> 6 <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" /> 7 </head> 8 <body> 9 <h1>window.open from a window being closed</h1> 10 <script> 11 add_task(async function() { 12 const RELS = ["", "#noopener", "#opener"]; 13 const FEATURES = [ 14 "", 15 "noopener", 16 "width=300", 17 "width=300,noopener", 18 ]; 19 20 let resolver; 21 let channel = new BroadcastChannel("test"); 22 channel.onmessage = function(e) { 23 info("message from broadcastchannel: " + e.data); 24 if (e.data == "load") { 25 resolver(); 26 } 27 }; 28 29 for (let rel of RELS) { 30 for (let feature of FEATURES) { 31 info(`running test: rel=${rel}, feature=${feature}`); 32 33 let loadPromise = new Promise(r => { resolver = r; }); 34 window.open("file_window_close_and_open.html" + rel, "_blank", feature); 35 await loadPromise; 36 ok(true, "popup opened successfully - closing..."); 37 channel.postMessage("close"); 38 } 39 } 40 }); 41 </script> 42 </body> 43 </html>