aboutsummaryrefslogtreecommitdiff
path: root/node_modules/es6-iterator/test/valid-iterable.js
diff options
context:
space:
mode:
Diffstat (limited to 'node_modules/es6-iterator/test/valid-iterable.js')
-rw-r--r--node_modules/es6-iterator/test/valid-iterable.js28
1 files changed, 28 insertions, 0 deletions
diff --git a/node_modules/es6-iterator/test/valid-iterable.js b/node_modules/es6-iterator/test/valid-iterable.js
new file mode 100644
index 00000000..b8b2a8a6
--- /dev/null
+++ b/node_modules/es6-iterator/test/valid-iterable.js
@@ -0,0 +1,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");
+};