// Copyright 2014 Cubane Canada, Inc. All rights reserved. // See LICENSE for details. /*--- info: | Promise.all expects an iterable argument; fails if recieves an abrupt completion ref 7.4.1 non-Object fails CheckIterable ref 7.4.2 GetIterator throws TypeError if CheckIterable fails es6id: S25.4.4.1_A3.1_T2 author: Sam Mikes description: Promise.all(new Error()) returns Promise rejected with TypeError flags: [async] ---*/ Promise.all(new Error("abrupt")).then(function() { $ERROR('Promise unexpectedly resolved: Promise.all(abruptCompletion) should throw TypeError'); }, function(err) { if (!(err instanceof TypeError)) { $ERROR('Expected TypeError, got ' + err); } }).then($DONE, $DONE);