blob: 82d1aa317d1bd09caab5e9ace9229ec5f8b62d11 [file] [log] [blame]
'use strict';
const assert = require('assert');
// Make sure the instance data finalizer is called at process exit. If the hint
// is non-zero, it will be printed out by the child process.
const cleanupTest = (binding, hint) => {
binding.addon_data(hint).verbose = true;
};
module.exports = {
workingCode: binding => {
const addonData = binding.addon_data(0);
// Make sure it is possible to get/set instance data.
assert.strictEqual(addonData.verbose.verbose, false);
addonData.verbose = true;
assert.strictEqual(addonData.verbose.verbose, true);
addonData.verbose = false;
assert.strictEqual(addonData.verbose.verbose, false);
},
cleanupWithHint: binding => cleanupTest(binding, 42),
cleanupWithoutHint: binding => cleanupTest(binding, 0)
};