diff options
Diffstat (limited to 'js/src/jit-test/tests/wasm/stealing.js')
-rw-r--r-- | js/src/jit-test/tests/wasm/stealing.js | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/js/src/jit-test/tests/wasm/stealing.js b/js/src/jit-test/tests/wasm/stealing.js new file mode 100644 index 0000000000..6e4e60b9b1 --- /dev/null +++ b/js/src/jit-test/tests/wasm/stealing.js @@ -0,0 +1,17 @@ +var exp = wasmEvalText(`(module + (memory 1) + (export "mem" (memory 0)) + (func $f (result i32) (i32.load (i32.const 0))) + (export "f" (func $f)) +)`).exports; + +var ab = exp.mem.buffer; +new Int32Array(ab)[0] = 42; + +assertEq(exp.f(), 42); + +assertThrowsInstanceOf(() => detachArrayBuffer(ab), Error); +assertEq(exp.f(), 42); + +assertThrowsInstanceOf(() => serialize(ab, [ab]), Error); +assertEq(exp.f(), 42); |