test262/test/built-ins/Array/from/source-object-iterator-1.js

30 lines
741 B
JavaScript

// Copyright 2015 Microsoft Corporation. All rights reserved.
// This code is governed by the license found in the LICENSE file.
/*---
description: Source object has iterator which throws
esid: sec-array.from
es6id: 22.1.2.1
---*/
var array = [ 2, 4, 8, 16, 32, 64, 128 ];
var obj = {
[Symbol.iterator]() {
return {
index: 0,
next() {
throw new Test262Error();
},
isDone : false,
get val() {
this.index++;
if (this.index > 7) {
this.isDone = true;
}
return 1 << this.index;
}
};
}
};
assert.throws(Test262Error, function(){Array.from(obj);});