diff options
Diffstat (limited to 'js/src/jit-test/tests/debug/Object-isClassConstructor.js')
-rw-r--r-- | js/src/jit-test/tests/debug/Object-isClassConstructor.js | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/js/src/jit-test/tests/debug/Object-isClassConstructor.js b/js/src/jit-test/tests/debug/Object-isClassConstructor.js new file mode 100644 index 0000000000..342e9d1a52 --- /dev/null +++ b/js/src/jit-test/tests/debug/Object-isClassConstructor.js @@ -0,0 +1,21 @@ +// Debugger.Object.prototype.isClassConstructor recognizes ES6 classes. + +var g = newGlobal({ newCompartment: true }); +var dbg = new Debugger(); +var gDO = dbg.addDebuggee(g); +var hits = 0; + +function checkIsClassConstructor(shouldBe, expr) { + print(expr); + assertEq(gDO.executeInGlobal(expr).return.isClassConstructor, shouldBe); +} + +checkIsClassConstructor(true, "class MyClass{}; MyClass;"); +checkIsClassConstructor(false, "class MyClass2{}; MyClass2.constructor;"); +checkIsClassConstructor( + false, + "class MyClass3{}; Object.getPrototypeOf(MyClass3)" +); +checkIsClassConstructor(false, "(a) => { bleh; }"); +checkIsClassConstructor(false, "(async function f () {})"); +checkIsClassConstructor(void 0, "({})"); |