mirror of https://github.com/nodejs/node.git
27 lines
736 B
JavaScript
27 lines
736 B
JavaScript
'use strict';
|
|
require('../common');
|
|
|
|
const vm = require('node:vm');
|
|
const util = require('node:util');
|
|
const assert = require('node:assert');
|
|
|
|
// This verifies that invoking property getters defined with
|
|
// `require('internal/util').defineLazyProperties` does not crash
|
|
// the process.
|
|
|
|
const ctx = vm.createContext();
|
|
const getter = vm.runInContext(`
|
|
function getter(object, property) {
|
|
return object[property];
|
|
}
|
|
getter;
|
|
`, ctx);
|
|
|
|
// `util.parseArgs` is a lazy property.
|
|
const parseArgs = getter(util, 'parseArgs');
|
|
assert.strictEqual(parseArgs, util.parseArgs);
|
|
|
|
// `globalThis.TextEncoder` is a lazy property.
|
|
const TextEncoder = getter(globalThis, 'TextEncoder');
|
|
assert.strictEqual(TextEncoder, globalThis.TextEncoder);
|