summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorAndrey Melikhov <amel.truelife@gmail.com>2019-05-26 15:51:36 +0300
committerMichaƫl Zasso <targos@protonmail.com>2019-07-20 11:13:04 +0200
commit1770bc870e6ea05e95a32be43705107147a22442 (patch)
treeaddcc7e90633055324684de3d408855d3d1167d1 /test
parent0b7fecaf97d9067dd8bd14dba0ba159ca8cf56a2 (diff)
downloadandroid-node-v8-1770bc870e6ea05e95a32be43705107147a22442.tar.gz
android-node-v8-1770bc870e6ea05e95a32be43705107147a22442.tar.bz2
android-node-v8-1770bc870e6ea05e95a32be43705107147a22442.zip
module: increase code coverage of cjs loader
Add test cases to cover uncovered wrap and wrapper getters. Refs: https://coverage.nodejs.org/coverage-99268b1e996d13a0/lib/internal/modules/cjs/loader.js.html#L153 PR-URL: https://github.com/nodejs/node/pull/27898 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Jan Krems <jan.krems@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Rich Trott <rtrott@gmail.com>
Diffstat (limited to 'test')
-rw-r--r--test/fixtures/cjs-module-wrap.js1
-rw-r--r--test/fixtures/cjs-module-wrapper.js23
-rw-r--r--test/parallel/test-module-wrap.js2
-rw-r--r--test/parallel/test-module-wrapper.js9
4 files changed, 34 insertions, 1 deletions
diff --git a/test/fixtures/cjs-module-wrap.js b/test/fixtures/cjs-module-wrap.js
index 2e11cc1a3b..4a3114c5f1 100644
--- a/test/fixtures/cjs-module-wrap.js
+++ b/test/fixtures/cjs-module-wrap.js
@@ -1,3 +1,4 @@
+'use strict';
const assert = require('assert');
const m = require('module');
diff --git a/test/fixtures/cjs-module-wrapper.js b/test/fixtures/cjs-module-wrapper.js
new file mode 100644
index 0000000000..b4e73682af
--- /dev/null
+++ b/test/fixtures/cjs-module-wrapper.js
@@ -0,0 +1,23 @@
+'use strict';
+const assert = require('assert');
+const m = require('module');
+
+global.mwc = 0;
+
+const originalWrapper = m.wrapper;
+const patchedWrapper = {...m.wrapper};
+
+patchedWrapper[0] += 'global.mwc = (global.mwc || 0 ) + 1';
+
+// Storing original version of wrapper function
+m.wrapper = patchedWrapper;
+
+require('./not-main-module.js');
+
+assert.strictEqual(mwc, 1);
+
+// Restoring original wrapper function
+m.wrapper = originalWrapper;
+// Cleaning require cache
+delete require.cache[require.resolve('./not-main-module.js')];
+delete global.mwc;
diff --git a/test/parallel/test-module-wrap.js b/test/parallel/test-module-wrap.js
index 639300cb6a..367307e4a7 100644
--- a/test/parallel/test-module-wrap.js
+++ b/test/parallel/test-module-wrap.js
@@ -4,6 +4,6 @@ const fixtures = require('../common/fixtures');
const { execFileSync } = require('child_process');
const cjsModuleWrapTest = fixtures.path('cjs-module-wrap.js');
-const node = process.argv[0];
+const node = process.execPath;
execFileSync(node, [cjsModuleWrapTest], { stdio: 'pipe' });
diff --git a/test/parallel/test-module-wrapper.js b/test/parallel/test-module-wrapper.js
new file mode 100644
index 0000000000..39e6d734f4
--- /dev/null
+++ b/test/parallel/test-module-wrapper.js
@@ -0,0 +1,9 @@
+'use strict';
+require('../common');
+const fixtures = require('../common/fixtures');
+const { execFileSync } = require('child_process');
+
+const cjsModuleWrapTest = fixtures.path('cjs-module-wrapper.js');
+const node = process.execPath;
+
+execFileSync(node, [cjsModuleWrapTest], { stdio: 'pipe' });