summaryrefslogtreecommitdiffstats
path: root/js/src/jit-test/tests/debug/wasm-04.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/src/jit-test/tests/debug/wasm-04.js')
-rw-r--r--js/src/jit-test/tests/debug/wasm-04.js34
1 files changed, 34 insertions, 0 deletions
diff --git a/js/src/jit-test/tests/debug/wasm-04.js b/js/src/jit-test/tests/debug/wasm-04.js
new file mode 100644
index 000000000..4fb9cd7d6
--- /dev/null
+++ b/js/src/jit-test/tests/debug/wasm-04.js
@@ -0,0 +1,34 @@
+// Tests that wasm module scripts throw for everything except text.
+
+load(libdir + "asserts.js");
+
+if (!wasmIsSupported())
+ quit();
+
+var g = newGlobal();
+var dbg = new Debugger(g);
+
+var s;
+dbg.onNewScript = (script) => {
+ s = script;
+}
+
+g.eval(`o = new WebAssembly.Instance(new WebAssembly.Module(wasmTextToBinary('(module (func) (export "" 0))')));`);
+assertEq(s.format, "wasm");
+
+assertThrowsInstanceOf(() => s.displayName, Error);
+assertThrowsInstanceOf(() => s.url, Error);
+assertThrowsInstanceOf(() => s.startLine, Error);
+assertThrowsInstanceOf(() => s.lineCount, Error);
+assertThrowsInstanceOf(() => s.sourceStart, Error);
+assertThrowsInstanceOf(() => s.sourceLength, Error);
+assertThrowsInstanceOf(() => s.global, Error);
+assertThrowsInstanceOf(() => s.getChildScripts(), Error);
+assertThrowsInstanceOf(() => s.getAllOffsets(), Error);
+assertThrowsInstanceOf(() => s.getAllColumnOffsets(), Error);
+assertThrowsInstanceOf(() => s.setBreakpoint(0, { hit: () => {} }), Error);
+assertThrowsInstanceOf(() => s.getBreakpoint(0), Error);
+assertThrowsInstanceOf(() => s.clearBreakpoint({}), Error);
+assertThrowsInstanceOf(() => s.clearAllBreakpoints(), Error);
+assertThrowsInstanceOf(() => s.isInCatchScope(0), Error);
+assertThrowsInstanceOf(() => s.getOffsetsCoverage(), Error);