napi-rs/examples/napi-compat-mode/__test__/throw.spec.ts
2022-01-04 11:04:45 +08:00

20 lines
546 B
TypeScript

import test from 'ava'
const bindings = require('../index.node')
test('should be able to throw error from native', (t) => {
t.throws(bindings.testThrow)
})
test('should be able to throw error from native with reason', (t) => {
const reason = 'Fatal'
t.throws(() => bindings.testThrowWithReason(reason), void 0, reason)
})
test('should throw if argument type is not match', (t) => {
t.throws(() => bindings.testThrowWithReason(2))
})
test('should throw if Rust code panic', (t) => {
t.throws(() => bindings.testThrowWithPanic())
})