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

Side by Side Diff: LayoutTests/fast/js/Promise-then.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 resolve; 14 var resolve;
15 15
16 var firstPromise = new Promise(function(newResolve) { 16 var firstPromise = new Promise(function(newResolve) {
17 window.thisInInit = this; 17 window.thisInInit = this;
18 resolve = newResolve; 18 resolve = newResolve;
19 }); 19 });
20 20
21 var secondPromise = firstPromise.then(function(result) { 21 var secondPromise = firstPromise.then(function(result) {
22 window.thisInFulfillCallback = this; 22 window.thisInFulfillCallback = this;
23 shouldBeFalse('thisInFulfillCallback === firstPromise'); 23 shouldBeFalse('thisInFulfillCallback === firstPromise');
24 shouldBeTrue('thisInFulfillCallback === secondPromise'); 24 shouldBeFalse('thisInFulfillCallback === secondPromise');
25 shouldBeTrue('thisInFulfillCallback === window');
25 window.result = result; 26 window.result = result;
26 shouldBeEqualToString('result', 'hello'); 27 shouldBeEqualToString('result', 'hello');
27 finishJSTest(); 28 finishJSTest();
28 }); 29 });
29 30
30 shouldBeTrue('thisInInit === firstPromise'); 31 shouldBeFalse('thisInInit === firstPromise');
32 shouldBeTrue('thisInInit === window');
31 shouldBeTrue('firstPromise instanceof Promise'); 33 shouldBeTrue('firstPromise instanceof Promise');
32 shouldBeTrue('secondPromise instanceof Promise'); 34 shouldBeTrue('secondPromise instanceof Promise');
33 35
34 shouldThrow('firstPromise.then(null)', '"TypeError: fulfillCallback must be a fu nction or undefined"'); 36 shouldThrow('firstPromise.then(null)', '"TypeError: onFulfilled must be a functi on or undefined"');
35 shouldThrow('firstPromise.then(undefined, null)', '"TypeError: rejectCallback mu st be a function or undefined"'); 37 shouldThrow('firstPromise.then(undefined, null)', '"TypeError: onRejected must b e a function or undefined"');
36 shouldThrow('firstPromise.then(37)', '"TypeError: fulfillCallback must be a func tion or undefined"'); 38 shouldThrow('firstPromise.then(37)', '"TypeError: onFulfilled must be a function or undefined"');
37 39
38 resolve('hello'); 40 resolve('hello');
39 41
40 </script> 42 </script>
41 <script src="resources/js-test-post.js"></script> 43 <script src="resources/js-test-post.js"></script>
42 </body> 44 </body>
43 </html> 45 </html>
OLDNEW
« no previous file with comments | « LayoutTests/fast/js/Promise-simple-in-workers-expected.txt ('k') | LayoutTests/fast/js/Promise-then-callback-receiver.html » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698