19 lines
561 B
JavaScript
19 lines
561 B
JavaScript
|
'use strict';
|
||
|
|
||
|
var iteratorSymbol = require('es6-symbol').iterator
|
||
|
, Iterator = require('../');
|
||
|
|
||
|
module.exports = function (t, a) {
|
||
|
var obj;
|
||
|
a.throws(function () { t(); }, TypeError, "Undefined");
|
||
|
a.throws(function () { t({}); }, TypeError, "Plain object");
|
||
|
a.throws(function () { t({ length: 0 }); }, TypeError, "Array-like");
|
||
|
obj = {};
|
||
|
obj[iteratorSymbol] = function () { return new Iterator([]); };
|
||
|
a(t(obj), obj, "Iterator");
|
||
|
obj = [];
|
||
|
a(t(obj), obj, 'Array');
|
||
|
obj = (function () { return arguments; }());
|
||
|
a(t(obj), obj, "Arguments");
|
||
|
};
|