| // Copyright 2014 Cubane Canada, Inc. All rights reserved. |
| // See LICENSE for details. |
| |
| /*--- |
| info: | |
| Promise throws TypeError when 'this' is resolved promise |
| es6id: S25.4.3.1_A2.3_T1 |
| author: Sam Mikes |
| description: Promise.call(resolved Promise) throws TypeError |
| flags: [async] |
| ---*/ |
| |
| var p = new Promise(function(resolve) { |
| resolve(1); |
| }); |
| |
| p.then(function() { |
| Promise.call(p, function() {}); |
| }).then(function() { |
| $ERROR("Unexpected resolution - expected TypeError"); |
| }, function(err) { |
| if (!(err instanceof TypeError)) { |
| $ERROR("Expected TypeError, got " + err); |
| } |
| }).then($DONE, $DONE); |