blob: be6c98a32e21ca95584548c9b8eb17002bdbd18d [file] [log] [blame] [edit]
'use strict';
const assert = require('assert');
const testUtil = require('../testUtil');
module.exports = require('../common').runTest(test);
function createWeakRef (binding, bindingToTest) {
return binding.object[bindingToTest]({});
}
function test (binding) {
let obj1;
let obj2;
return testUtil.runGCTests([
'addFinalizer',
() => {
obj1 = createWeakRef(binding, 'addFinalizer');
},
() => assert.deepStrictEqual(obj1, { finalizerCalled: true }),
'addFinalizerWithHint',
() => {
obj2 = createWeakRef(binding, 'addFinalizerWithHint');
},
() => assert.deepStrictEqual(obj2, { finalizerCalledWithCorrectHint: true })
]);
}