From c22a493144e39d76bfa42c46f9d6d17a5143ac35 Mon Sep 17 00:00:00 2001
From: wolfbeast <mcwerewolf@wolfbeast.com>
Date: Sat, 22 Feb 2020 21:09:32 +0100
Subject: Revert #1142 - Remove unboxed objects

- accounting for removal of watch()/unwatch()
---
 .../tests/basic/unboxed-property-enumeration.js    | 24 ++++++++++++++++++++++
 1 file changed, 24 insertions(+)
 create mode 100644 js/src/jit-test/tests/basic/unboxed-property-enumeration.js

(limited to 'js/src/jit-test/tests/basic/unboxed-property-enumeration.js')

diff --git a/js/src/jit-test/tests/basic/unboxed-property-enumeration.js b/js/src/jit-test/tests/basic/unboxed-property-enumeration.js
new file mode 100644
index 000000000..142d932dd
--- /dev/null
+++ b/js/src/jit-test/tests/basic/unboxed-property-enumeration.js
@@ -0,0 +1,24 @@
+function O() {
+    this.x = 1;
+    this.y = 2;
+}
+function testUnboxed() {
+    var arr = [];
+    for (var i=0; i<100; i++)
+	arr.push(new O);
+
+    var o = arr[arr.length-1];
+    o[0] = 0;
+    o[2] = 2;
+    var sym = Symbol();
+    o[sym] = 1;
+    o.z = 3;
+    Object.defineProperty(o, '3', {value:1,enumerable:false,configurable:false,writable:false});
+    o[4] = 4;
+
+    var props = Reflect.ownKeys(o);
+    assertEq(props[props.length-1], sym);
+
+    assertEq(Object.getOwnPropertyNames(o).join(""), "0234xyz");
+}
+testUnboxed();
-- 
cgit v1.2.3