OLD | NEW |
1 importScripts('./js-test-pre.js'); | 1 importScripts('./js-test-pre.js'); |
2 | 2 |
3 description('Test Promise.'); | 3 description('Test Promise.'); |
4 | 4 |
5 var global = this; | 5 var global = this; |
6 | 6 |
7 global.jsTestIsAsync = true; | 7 global.jsTestIsAsync = true; |
8 | 8 |
9 var resolve; | 9 var resolve; |
10 | 10 |
11 var firstPromise = new Promise(function(newResolve) { | 11 var firstPromise = new Promise(function(newResolve) { |
12 global.thisInInit = this; | 12 global.thisInInit = this; |
13 resolve = newResolve; | 13 resolve = newResolve; |
14 }); | 14 }); |
15 | 15 |
16 var secondPromise = firstPromise.then(function(result) { | 16 var secondPromise = firstPromise.then(function(result) { |
17 global.thisInFulfillCallback = this; | 17 global.thisInFulfillCallback = this; |
18 shouldBeTrue('thisInFulfillCallback === secondPromise'); | 18 shouldBeFalse('thisInFulfillCallback === secondPromise'); |
| 19 shouldBeTrue('thisInFulfillCallback === global'); |
19 global.result = result; | 20 global.result = result; |
20 shouldBeEqualToString('result', 'hello'); | 21 shouldBeEqualToString('result', 'hello'); |
21 finishJSTest(); | 22 finishJSTest(); |
22 }); | 23 }); |
23 | 24 |
24 shouldBeTrue('thisInInit === firstPromise'); | 25 shouldBeFalse('thisInInit === firstPromise'); |
| 26 shouldBeTrue('thisInInit === global'); |
25 | 27 |
26 resolve('hello'); | 28 resolve('hello'); |
OLD | NEW |