order-of-args-evaluation.js (791B)
1 // Copyright (C) 2020 Rick Waldron. All rights reserved. 2 // This code is governed by the BSD license found in the LICENSE file. 3 4 /*--- 5 esid: sec-aggregate-error 6 description: > 7 Process arguments in superclass-then-subclass order 8 info: | 9 AggregateError ( errors, message ) 10 11 TODO: get updated prose 12 13 features: [AggregateError, Symbol.iterator] 14 includes: [promiseHelper.js] 15 ---*/ 16 17 let sequence = []; 18 const message = { 19 toString() { 20 sequence.push(1); 21 return ''; 22 } 23 }; 24 const errors = { 25 [Symbol.iterator]() { 26 sequence.push(2); 27 return { 28 next() { 29 sequence.push(3); 30 return { 31 done: true 32 }; 33 } 34 }; 35 } 36 }; 37 38 new AggregateError(errors, message); 39 40 assert.sameValue(sequence.length, 3); 41 checkSequence(sequence); 42 43 reportCompare(0, 0);