summaryrefslogtreecommitdiffstats
path: root/js/src/jit-test/tests/collections/Set-constructor-2.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/src/jit-test/tests/collections/Set-constructor-2.js')
-rw-r--r--js/src/jit-test/tests/collections/Set-constructor-2.js18
1 files changed, 18 insertions, 0 deletions
diff --git a/js/src/jit-test/tests/collections/Set-constructor-2.js b/js/src/jit-test/tests/collections/Set-constructor-2.js
new file mode 100644
index 000000000..43fffba8e
--- /dev/null
+++ b/js/src/jit-test/tests/collections/Set-constructor-2.js
@@ -0,0 +1,18 @@
+// The Set constructor can take an argument that is an array.
+
+var s = new Set([]);
+assertEq(s.size, 0);
+assertEq(s.has(undefined), false);
+
+s = new Set(["one", "two", "three"]);
+assertEq(s.size, 3);
+assertEq(s.has("one"), true);
+assertEq(s.has("eleventeen"), false);
+
+var a = [{}, {}, {}];
+s = new Set(a);
+assertEq(s.size, 3);
+for (let obj of a)
+ assertEq(s.has(obj), true);
+assertEq(s.has({}), false);
+assertEq(s.has("three"), false);