UNPKG

finalize-addon

Version:

Object finalization based on N-API for Node.js v8.6.0+

28 lines (23 loc) 693 B
const finalize = require('.') const assert = require('assert') assert.throws(() => finalize()) assert.throws(() => finalize({})) assert.throws(() => finalize({}, () => {}, {})) assert.throws(() => finalize('', () => {})) assert.throws(() => finalize(0, () => {})) assert.throws(() => finalize(true, () => {})) assert.throws(() => finalize(null, () => {})) assert.throws(() => finalize(undefined, () => {})) assert.throws(() => finalize(Symbol(), () => {})) const handle = setTimeout(() => { assert.fail('finalizer not called') }, 5000) function finalizer () { clearTimeout(handle) } function run () { const obj = {key: 'value'} finalize(obj, finalizer) } run() gc() // --expose-gc