Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(169)

Side by Side Diff: LayoutTests/fast/js/Promise-exception.html

Issue 24980002: Implement AP2 Promises (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Created 7 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 firstPromise = new Promise(function(resolve) { 14 var firstPromise = new Promise(function(resolve) {
15 window.thisInInit = this; 15 window.thisInInit = this;
16 resolve('hello'); 16 resolve('hello');
17 }); 17 });
18 18
19 var secondPromise = firstPromise.then(function(result) { 19 var secondPromise = firstPromise.then(function(result) {
20 throw 'foobar'; 20 throw 'foobar';
21 }); 21 });
22 22
23 var thirdPromise = secondPromise.then(function(result) { 23 var thirdPromise = secondPromise.then(function(result) {
24 fail('Unexpected invocation of fulfillCallback'); 24 fail('Unexpected invocation of fulfillCallback');
25 }, function(result) { 25 }, function(result) {
26 window.thisInThenCallback = this; 26 window.thisInThenCallback = this;
27 shouldBeTrue('thisInThenCallback === thirdPromise'); 27 shouldBeFalse('thisInThenCallback === thirdPromise');
28 shouldBeTrue('thisInThenCallback === window');
28 window.result = result; 29 window.result = result;
29 shouldBeEqualToString('result', 'foobar'); 30 shouldBeEqualToString('result', 'foobar');
30 finishJSTest(); 31 finishJSTest();
31 }); 32 });
32 33
33 </script> 34 </script>
34 <script src="resources/js-test-post.js"></script> 35 <script src="resources/js-test-post.js"></script>
35 </body> 36 </body>
36 </html> 37 </html>
OLDNEW
« no previous file with comments | « LayoutTests/fast/js/Promise-catch-in-workers-expected.txt ('k') | LayoutTests/fast/js/Promise-exception-expected.txt » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698