OLD | NEW |
1 // Copyright 2013 the V8 project authors. All rights reserved. | 1 // Copyright 2013 the V8 project authors. All rights reserved. |
2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
4 // met: | 4 // met: |
5 // | 5 // |
6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
(...skipping 381 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
392 assertUnreachable, | 392 assertUnreachable, |
393 function(x) { assertAsync(x === 5, "then/reject") } | 393 function(x) { assertAsync(x === 5, "then/reject") } |
394 ) | 394 ) |
395 deferred.reject(5) | 395 deferred.reject(5) |
396 assertAsyncRan() | 396 assertAsyncRan() |
397 })(); | 397 })(); |
398 | 398 |
399 (function() { | 399 (function() { |
400 var deferred = Promise.defer() | 400 var deferred = Promise.defer() |
401 var p1 = deferred.promise | 401 var p1 = deferred.promise |
402 var p2 = p1.then(1, 2) | |
403 p2.then( | |
404 function(x) { assertAsync(x === 5, "then/resolve-non-function") }, | |
405 assertUnreachable | |
406 ) | |
407 deferred.resolve(5) | |
408 assertAsyncRan() | |
409 })(); | |
410 | |
411 (function() { | |
412 var deferred = Promise.defer() | |
413 var p1 = deferred.promise | |
414 var p2 = p1.then(1, 2) | |
415 p2.then( | |
416 assertUnreachable, | |
417 function(x) { assertAsync(x === 5, "then/reject-non-function") } | |
418 ) | |
419 deferred.reject(5) | |
420 assertAsyncRan() | |
421 })(); | |
422 | |
423 (function() { | |
424 var deferred = Promise.defer() | |
425 var p1 = deferred.promise | |
426 var p2 = {then: function(onResolve, onReject) { onResolve(p1) }} | 402 var p2 = {then: function(onResolve, onReject) { onResolve(p1) }} |
427 var p3 = Promise.accept(p2) | 403 var p3 = Promise.accept(p2) |
428 p3.chain( | 404 p3.chain( |
429 function(x) { assertAsync(x === p2, "chain/resolve/thenable") }, | 405 function(x) { assertAsync(x === p2, "chain/resolve/thenable") }, |
430 assertUnreachable | 406 assertUnreachable |
431 ) | 407 ) |
432 deferred.resolve(5) | 408 deferred.resolve(5) |
433 assertAsyncRan() | 409 assertAsyncRan() |
434 })(); | 410 })(); |
435 | 411 |
(...skipping 380 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
816 Promise.all([11, Promise.accept(12), 13, MyPromise.accept(14), 15, 16]) | 792 Promise.all([11, Promise.accept(12), 13, MyPromise.accept(14), 15, 16]) |
817 assertTrue(log === "nx14n", "subclass/all/arg") | 793 assertTrue(log === "nx14n", "subclass/all/arg") |
818 | 794 |
819 log = "" | 795 log = "" |
820 MyPromise.all([21, Promise.accept(22), 23, MyPromise.accept(24), 25, 26]) | 796 MyPromise.all([21, Promise.accept(22), 23, MyPromise.accept(24), 25, 26]) |
821 assertTrue(log === "nx24nnx21nnx23nnnx25nnx26n", "subclass/all/self") | 797 assertTrue(log === "nx24nnx21nnx23nnnx25nnx26n", "subclass/all/self") |
822 })(); | 798 })(); |
823 | 799 |
824 | 800 |
825 assertAsyncDone() | 801 assertAsyncDone() |
OLD | NEW |