signal-abort-window-stop-in-onnavigate.html (890B)
1 <!doctype html> 2 <script src="/resources/testharness.js"></script> 3 <script src="/resources/testharnessreport.js"></script> 4 <script> 5 async_test(t => { 6 window.onload = t.step_func(() => { 7 let abort_signal; 8 let onabort_called = false; 9 let canceled_in_second_handler = false; 10 navigation.addEventListener("navigate", t.step_func(e => { 11 abort_signal = e.signal; 12 abort_signal.onabort = () => onabort_called = true; 13 window.stop(); 14 })); 15 navigation.addEventListener("navigate", t.step_func(e => { 16 canceled_in_second_handler = e.defaultPrevented; 17 })); 18 navigation.navigate("?1").committed.catch((error) => { 19 assert_true(abort_signal.aborted); 20 assert_true(onabort_called); 21 assert_true(canceled_in_second_handler); 22 t.done(); 23 }); 24 }); 25 }, "window.stop() signals event.signal inside a navigate event handler"); 26 </script>