Sha256: a726a85f4805648d9e69c804a266bbedaed942228a1b3a46274a91bcb83eafe9
Contents?: true
Size: 1.23 KB
Versions: 30
Compression:
Stored size: 1.23 KB
Contents
const wasm = require('wasm-bindgen-test.js'); const assert = require('assert'); // NB: `wasm-pack` uses the presence of checks for moved values as a way to test // whether it is correctly enabling `--debug` when configured to do so, so don't // change this expected debug output without also updating `wasm-pack`'s tests. const assertMovedPtrThrows = process.env.WASM_BINDGEN_NO_DEBUG == null ? f => assert.throws(f, /Attempt to use a moved value/) : f => assert.throws(f, /null pointer passed to rust/); const useMoved = () => { const apple = new wasm.Fruit('apple'); apple.name(); wasm.eat(apple); assertMovedPtrThrows(() => apple.name()); }; const moveMoved = () => { const pear = new wasm.Fruit('pear'); pear.name(); wasm.eat(pear); assertMovedPtrThrows(() => wasm.eat(pear)); }; const methodMoved = () => { const quince = new wasm.Fruit('quince'); quince.name(); quince.rot(); assertMovedPtrThrows(() => quince.rot()); }; exports.js_works = () => { useMoved(); moveMoved(); methodMoved(); const a = new wasm.Fruit('a'); a.prop; assertMovedPtrThrows(() => a.prop); const b = new wasm.Fruit('a'); b.prop = 3; assertMovedPtrThrows(() => { b.prop = 4; }); };
Version data entries
30 entries across 30 versions & 1 rubygems