napi-rs/examples/napi-compat-mode/__tests__/serde/serde-json.spec.ts
forehal a781a4f27e feat(cli): brand new cli tool with both cli and programmatical usage (#1492)
BREAKING CHANGE: requires node >= 16 and some cli options have been renamed
2023-04-06 11:04:53 +08:00

28 lines
622 B
TypeScript

import test from 'ava'
const bindings = require('../../index.node')
const ValidObject = {
a: 1,
b: [-1.2, 1.1, 2.2, 3.3],
c: 'Hi',
}
const InValidObject = {
a: -1,
b: [-1, 1.1, 2.2, 3.3],
c: 'Hello',
}
test('should from json string', (t) => {
t.throws(() => bindings.from_json_string(JSON.stringify(InValidObject)))
t.deepEqual(
ValidObject,
bindings.from_json_string(JSON.stringify(ValidObject)),
)
})
test('should convert to json string', (t) => {
t.throws(() => bindings.json_to_string(InValidObject))
t.deepEqual(JSON.stringify(ValidObject), bindings.json_to_string(ValidObject))
})