summaryrefslogtreecommitdiff
path: root/test/parallel/test-internal-util-weakreference.js
blob: b48b34fe2309ea76671c6af043e8e5ac60b7f893 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
// Flags: --expose-internals --expose-gc
'use strict';
require('../common');
const assert = require('assert');
const { internalBinding } = require('internal/test/binding');
const { WeakReference } = internalBinding('util');

let obj = { hello: 'world' };
const ref = new WeakReference(obj);
assert.strictEqual(ref.get(), obj);

setImmediate(() => {
  obj = null;
  global.gc();

  assert.strictEqual(ref.get(), undefined);
});