| const wasm = require('wasm-bindgen-test.js'); |
| const assert = require('assert'); |
| |
| exports.call_ok = function() { |
| assert.doesNotThrow(() => { |
| let five = wasm.return_ok(); |
| assert.strictEqual(five, 5); |
| }) |
| } |
| |
| exports.call_err = function() { |
| assert.throws(() => wasm.return_err(), { |
| message: "MyError::Variant" |
| }); |
| } |
| |
| exports.call_make_an_error = function() { |
| assert.doesNotThrow(() => { |
| let e = wasm.make_an_error() |
| assert.strictEqual(e.message, "un-thrown error"); |
| }); |
| } |
| |
| function check_inflight(struct) { |
| assert.strictEqual(struct.is_inflight(), false); |
| } |
| |
| exports.all_struct_methods = function() { |
| let struct; |
| assert.throws(() => wasm.MyStruct.new_err(), { |
| message: "MyError::Variant" |
| }); |
| assert.doesNotThrow(() => { |
| struct = wasm.MyStruct.new(); |
| }); |
| check_inflight(struct); |
| assert.doesNotThrow(() => { |
| let five = struct.return_ok(); |
| assert.strictEqual(five, 5); |
| }); |
| check_inflight(struct); |
| assert.throws(() => struct.return_err(), { |
| message: "MyError::Variant" |
| }); |
| check_inflight(struct); |
| } |
| |
| exports.call_return_string = function() { |
| assert.doesNotThrow(() => { |
| let ok = wasm.jserror_return_string(); |
| assert.strictEqual(ok, "string here"); |
| }) |
| } |
| |