From dde9b3a0d3a206bd43946b2087f0d39ccc967c48 Mon Sep 17 00:00:00 2001 From: alyssaq Date: Tue, 6 Nov 2018 15:21:04 +0000 Subject: [PATCH] test: check for invalid module type in vm.js PR-URL: https://github.com/nodejs/node/pull/24161 Reviewed-By: James M Snell Reviewed-By: Anna Henningsen Reviewed-By: Gireesh Punathil Reviewed-By: Ruben Bridgewater --- .../parallel/test-vm-module-dynamic-import.js | 30 +++++++++++++++---- 1 file changed, 24 insertions(+), 6 deletions(-) diff --git a/test/parallel/test-vm-module-dynamic-import.js b/test/parallel/test-vm-module-dynamic-import.js index 5c0f6f81fa842b..600f455e93306e 100644 --- a/test/parallel/test-vm-module-dynamic-import.js +++ b/test/parallel/test-vm-module-dynamic-import.js @@ -68,16 +68,34 @@ async function testInvalid() { await result.catch(common.mustCall((e) => { assert.strictEqual(e.code, 'ERR_VM_MODULE_NOT_MODULE'); })); + + const s = new Script('import("foo")', { + importModuleDynamically: common.mustCall((specifier, wrap) => { + return undefined; + }), + }); + let threw = false; + try { + await s.runInThisContext(); + } catch (e) { + threw = true; + assert.strictEqual(e.code, 'ERR_VM_MODULE_NOT_MODULE'); + } + assert(threw); +} + +async function testInvalidimportModuleDynamically() { + assert.throws( + () => new Script( + 'import("foo")', + { importModuleDynamically: false }), + { code: 'ERR_INVALID_ARG_TYPE' } + ); } -const done = common.mustCallAtLeast(3); (async function() { await testNoCallback(); - done(); - await test(); - done(); - await testInvalid(); - done(); + await testInvalidimportModuleDynamically(); }()).then(common.mustCall());