heyujie
2021-06-07 8f8155aa4c83f7c2577ac123add550766b6a7ce3
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
"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");
};