2020-08-24 17:16:35 +09:00
|
|
|
import test from 'ava'
|
2020-08-24 17:04:03 +09:00
|
|
|
|
|
|
|
const bindings = require('../index.node')
|
|
|
|
|
|
|
|
test('instanceof', (t) => {
|
|
|
|
const day = new Date()
|
|
|
|
t.true(bindings.instanceof(day, Date))
|
|
|
|
t.false(bindings.instanceof(day, Number))
|
|
|
|
t.false(bindings.instanceof(1, Date))
|
|
|
|
})
|
|
|
|
|
|
|
|
test('is_error', (t) => {
|
|
|
|
t.true(bindings.isError(new Error()))
|
|
|
|
t.true(bindings.isError(new TypeError()))
|
|
|
|
t.true(bindings.isError(new SyntaxError()))
|
|
|
|
t.false(bindings.isError('111'))
|
|
|
|
t.false(bindings.isError(2))
|
|
|
|
t.false(bindings.isError(Symbol()))
|
|
|
|
})
|
|
|
|
|
|
|
|
test('is_typedarray', (t) => {
|
|
|
|
t.true(bindings.isTypedarray(new Uint8Array()))
|
|
|
|
t.true(bindings.isTypedarray(new Uint16Array()))
|
|
|
|
t.true(bindings.isTypedarray(new Uint32Array()))
|
|
|
|
t.true(bindings.isTypedarray(new Int8Array()))
|
|
|
|
t.true(bindings.isTypedarray(new Int16Array()))
|
|
|
|
t.true(bindings.isTypedarray(new Int32Array()))
|
|
|
|
t.true(bindings.isTypedarray(Buffer.from('123')))
|
|
|
|
t.false(bindings.isTypedarray(Buffer.from('123').buffer))
|
|
|
|
t.false(bindings.isTypedarray([]))
|
|
|
|
})
|
|
|
|
|
|
|
|
test('is_dataview', (t) => {
|
|
|
|
const data = new Uint8Array(100)
|
|
|
|
t.true(bindings.isDataview(new DataView(data.buffer)))
|
|
|
|
t.false(bindings.isDataview(Buffer.from('123')))
|
|
|
|
})
|
|
|
|
|
|
|
|
test('strict_equals', (t) => {
|
|
|
|
const a = {
|
|
|
|
foo: 'bar',
|
|
|
|
}
|
|
|
|
const b = { ...a }
|
|
|
|
t.false(bindings.strictEquals(a, b))
|
|
|
|
t.false(bindings.strictEquals(1, '1'))
|
|
|
|
t.false(bindings.strictEquals(null, undefined))
|
|
|
|
t.false(bindings.strictEquals(NaN, NaN))
|
|
|
|
t.true(bindings.strictEquals(a, a))
|
|
|
|
})
|