summaryrefslogtreecommitdiffstats
path: root/js/src/jit-test/tests/debug/Object-defineProperty-06.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/src/jit-test/tests/debug/Object-defineProperty-06.js')
-rw-r--r--js/src/jit-test/tests/debug/Object-defineProperty-06.js21
1 files changed, 21 insertions, 0 deletions
diff --git a/js/src/jit-test/tests/debug/Object-defineProperty-06.js b/js/src/jit-test/tests/debug/Object-defineProperty-06.js
new file mode 100644
index 0000000000..0739746bd7
--- /dev/null
+++ b/js/src/jit-test/tests/debug/Object-defineProperty-06.js
@@ -0,0 +1,21 @@
+// obj.defineProperty with vague descriptors works like Object.defineProperty
+
+var g = newGlobal({newCompartment: true});
+var dbg = new Debugger;
+var gw = dbg.addDebuggee(g);
+
+gw.defineProperty("p", {configurable: true, enumerable: true});
+assertEq(g.p, undefined);
+var desc = g.Object.getOwnPropertyDescriptor(g, "p");
+assertEq(desc.configurable, true);
+assertEq(desc.enumerable, true);
+assertEq(desc.value, undefined);
+assertEq(desc.writable, false);
+
+gw.defineProperty("q", {});
+assertEq(g.q, undefined);
+var desc = g.Object.getOwnPropertyDescriptor(g, "q");
+assertEq(desc.configurable, false);
+assertEq(desc.enumerable, false);
+assertEq(desc.value, undefined);
+assertEq(desc.writable, false);