Chromium Code Reviews| Index: LayoutTests/fast/js/Promise-catch.html |
| diff --git a/LayoutTests/fast/js/Promise-catch.html b/LayoutTests/fast/js/Promise-catch.html |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..6c692d2d0d85a98a99f17d6eb92bb5f944aa0b8e |
| --- /dev/null |
| +++ b/LayoutTests/fast/js/Promise-catch.html |
| @@ -0,0 +1,59 @@ |
| +<!DOCTYPE html> |
| +<html> |
| +<head> |
| +<script src="resources/js-test-pre.js"></script> |
| +</head> |
| +<body> |
| +<div id="description"></div> |
| +<div id="console"></div> |
| +<script> |
| +description("Test Promise."); |
| + |
| +window.jsTestIsAsync = true; |
| + |
| +var resolver; |
| + |
| +var firstPromise = new Promise(function(newResolver) { |
| + window.thisInInit = this; |
| + resolver = newResolver; |
| +}); |
| + |
| +var secondPromise = firstPromise.catch(function(value) { |
| + window.thisInFulfillCallback = this; |
| + shouldBeFalse("thisInFulfillCallback === firstPromise"); |
| + shouldBeTrue("thisInFulfillCallback === secondPromise"); |
| + window.value = value; |
| + shouldBeEqualToString("value", "hello"); |
| +}); |
| + |
| +secondPromise.then(function() { |
| + debug("PASS fulfilled"); |
| + finishJSTest(); |
| +}, function() { |
| + debug("FAIL rejected"); |
| + finishJSTest(); |
| +}, function() { |
| +}); |
| + |
| +shouldBeTrue("thisInInit === firstPromise"); |
| +shouldBeTrue("firstPromise instanceof Promise"); |
| +shouldBeTrue("secondPromise instanceof Promise"); |
| + |
| +resolver.reject("hello"); |
| + |
| +</script> |
| +<script src="resources/js-test-post.js"></script> |
| +</body> |
| +</html> |
| +}); |
| + |
| +shouldBeTrue("thisInInit === firstPromise"); |
| +shouldBeTrue("firstPromise instanceof Promise"); |
| +shouldBeTrue("secondPromise instanceof Promise"); |
| + |
| +resolver.reject("hello"); |
| + |
| +</script> |
| +<script src="resources/js-test-post.js"></script> |
| +</body> |
| +</html> |
|
tyoshino (SeeGerritForStatus)
2013/06/14 04:57:53
Remove L49-59?
yhirano
2013/06/14 05:43:00
Done.
|