UNPKG

695 BJavaScriptView Raw
1'use strict';
2
3var iteratorSymbol = require('es6-symbol').iterator
4 , Iterator = require('../');
5
6module.exports = function (t, a) {
7 var iterator;
8 a.throws(function () { t(); }, TypeError, "Null");
9 a.throws(function () { t({}); }, TypeError, "Plain object");
10 a.throws(function () { t({ length: 0 }); }, TypeError, "Array-like");
11 iterator = {};
12 iterator[iteratorSymbol] = function () { return new Iterator([]); };
13 a(t(iterator) instanceof Iterator, true, "Iterator");
14 a(String(t([])), '[object Array Iterator]', " Array");
15 a(String(t((function () { return arguments; }()))), '[object Array Iterator]', " Arguments");
16 a(String(t('foo')), '[object String Iterator]', "String");
17};