OLD | NEW |
(Empty) | |
| 1 <!DOCTYPE html> |
| 2 <meta charset="utf-8"> |
| 3 <script src="../../resources/testharness.js"></script> |
| 4 <script src="../../resources/testharnessreport.js"></script> |
| 5 <script> |
| 6 'use strict'; |
| 7 async_test(function(t) { |
| 8 var e; |
| 9 var p = Promise.reject(new Error()); |
| 10 |
| 11 window.onunhandledrejection = function(evt) { |
| 12 e = evt; |
| 13 setTimeout(function() { |
| 14 var unreached = t.unreached_func('promise should not be fulfilled'); |
| 15 p.then(unreached, function(reason) {}); |
| 16 p = undefined; |
| 17 }, 10); |
| 18 evt.preventDefault(); |
| 19 }; |
| 20 |
| 21 window.onrejectionhandled = function(evt) { |
| 22 setTimeout(function() { |
| 23 if (window.gc) { |
| 24 gc(); |
| 25 } |
| 26 t.step(function() { |
| 27 assert_not_equals(e.reason, null); |
| 28 assert_not_equals(e.promise, null); |
| 29 }); |
| 30 t.done(); |
| 31 }, 10); |
| 32 }; |
| 33 }, 'evt.promise and evt.reason should live at least as long as evt'); |
| 34 </script> |
OLD | NEW |