summaryrefslogtreecommitdiff
path: root/deps/npm/node_modules/node-gyp/node_modules/path-array/node_modules/array-index/node_modules/es6-symbol/node_modules/es5-ext/node_modules/es6-iterator/test/get.js
blob: 81ce6e6ae48b79951f601f5fb22cdde36b4e67fc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
'use strict';

var iteratorSymbol = require('es6-symbol').iterator
  , Iterator       = require('../');

module.exports = function (t, a) {
	var iterator;
	a.throws(function () { t(); }, TypeError, "Null");
	a.throws(function () { t({}); }, TypeError, "Plain object");
	a.throws(function () { t({ length: 0 }); }, TypeError, "Array-like");
	iterator = {};
	iterator[iteratorSymbol] = function () { return new Iterator([]); };
	a(t(iterator) instanceof Iterator, true, "Iterator");
	a(String(t([])), '[object Array Iterator]', " Array");
	a(String(t((function () { return arguments; }()))), '[object Array Iterator]', " Arguments");
	a(String(t('foo')), '[object String Iterator]', "String");
};