| OLD | NEW |
| 1 <!DOCTYPE html> | 1 <!DOCTYPE html> |
| 2 <html> | 2 <html> |
| 3 <head> | 3 <head> |
| 4 <script src="resources/js-test-pre.js"></script> | 4 <script src="resources/js-test-pre.js"></script> |
| 5 </head> | 5 </head> |
| 6 <body> | 6 <body> |
| 7 <div id="description"></div> | 7 <div id="description"></div> |
| 8 <div id="console"></div> | 8 <div id="console"></div> |
| 9 <script> | 9 <script> |
| 10 description('Test Promise.'); | 10 description('Test Promise.'); |
| 11 | 11 |
| 12 window.jsTestIsAsync = true; | 12 window.jsTestIsAsync = true; |
| 13 | 13 |
| 14 var result; | 14 var result; |
| 15 var reject; | 15 var reject; |
| 16 var promise = new Promise(function (_, r) { reject = r; }); | 16 var promise = new Promise(function (_, r) { reject = r; }); |
| 17 | 17 |
| 18 for (var i = 0; i < 5000; ++i) | 18 for (var i = 0; i < 5000; ++i) |
| 19 promise = promise.then(function (value) { testFailed('fulfilled'); throw value
; }, function (value) { throw value; }); | 19 promise = promise.then(function (value) { testFailed('fulfilled'); throw value
; }, function (value) { throw value; }); |
| 20 | 20 |
| 21 promise.catch(function (value) { | 21 promise.catch(function (value) { |
| 22 window.result = value; | 22 window.result = value; |
| 23 shouldBe('result', '42'); | 23 shouldBe('result', '42'); |
| 24 }).then(finishJSTest, finishJSTest); | 24 }).then(finishJSTest, finishJSTest); |
| 25 | 25 |
| 26 shouldBe('result', 'undefined'); | 26 shouldBe('result', 'undefined'); |
| 27 reject(42); | 27 reject(42); |
| 28 | 28 |
| 29 </script> | 29 </script> |
| 30 <script src="resources/js-test-post.js"></script> | |
| 31 </body> | 30 </body> |
| 32 </html> | 31 </html> |
| OLD | NEW |