test: add testcase for SourceTextModule custom inspect

PR-URL: https://github.com/nodejs/node/pull/27889
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Ujjwal Sharma <usharma1998@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com>
This commit is contained in:
Grigory Gorshkov 2019-05-26 14:11:42 +03:00 committed by Ujjwal Sharma
parent c31ac419a9
commit ff66e08bce
No known key found for this signature in database
GPG Key ID: 1FD3B47B83F46621

View File

@ -5,6 +5,7 @@
const common = require('../common');
const assert = require('assert');
const { SourceTextModule, createContext } = require('vm');
const util = require('util');
(async function test1() {
const context = createContext({
@ -63,3 +64,21 @@ const { SourceTextModule, createContext } = require('vm');
const m3 = new SourceTextModule('3', { context: context2 });
assert.strictEqual(m3.url, 'vm:module(0)');
})();
// Check inspection of the instance
{
const context = createContext({ foo: 'bar' });
const m = new SourceTextModule('1', { context });
assert.strictEqual(
util.inspect(m),
"SourceTextModule {\n status: 'uninstantiated',\n linkingStatus:" +
" 'unlinked',\n url: 'vm:module(0)',\n context: { foo: 'bar' }\n}"
);
assert.strictEqual(
m[util.inspect.custom].call(Object.create(null)),
'SourceTextModule {\n status: undefined,\n linkingStatus: undefined,' +
'\n url: undefined,\n context: undefined\n}'
);
assert.strictEqual(util.inspect(m, { depth: -1 }), '[SourceTextModule]');
}