wallet-core/node_modules/es6-iterator/test/valid-iterable.js

29 lines
566 B
JavaScript
Raw Normal View History

2017-12-10 21:51:33 +01:00
"use strict";
2017-08-14 05:01:11 +02:00
2017-12-10 21:51:33 +01:00
var iteratorSymbol = require("es6-symbol").iterator
, Iterator = require("../");
2017-08-14 05:01:11 +02:00
module.exports = function (t, a) {
var obj;
2017-12-10 21:51:33 +01:00
a.throws(function () {
t();
}, TypeError, "Undefined");
a.throws(function () {
t({});
}, TypeError, "Plain object");
a.throws(function () {
t({ length: 0 });
}, TypeError, "Array-like");
2017-08-14 05:01:11 +02:00
obj = {};
2017-12-10 21:51:33 +01:00
obj[iteratorSymbol] = function () {
return new Iterator([]);
};
2017-08-14 05:01:11 +02:00
a(t(obj), obj, "Iterator");
obj = [];
2017-12-10 21:51:33 +01:00
a(t(obj), obj, "Array");
obj = (function () {
return arguments;
}());
2017-08-14 05:01:11 +02:00
a(t(obj), obj, "Arguments");
};