summaryrefslogtreecommitdiff
path: root/test/parallel/test-module-create-require.js
diff options
context:
space:
mode:
authorMyles Borins <myles.borins@gmail.com>2019-04-25 00:29:22 -0400
committerMyles Borins <mylesborins@google.com>2019-05-03 12:12:30 -0700
commit411063c6f5750f4a2243ef5154c589109d9b807c (patch)
treeb6c682d3d1c53ab167e371894fab9303c008b4e9 /test/parallel/test-module-create-require.js
parent8cac945126a9db099609ca33bf6289f2d02257db (diff)
downloadandroid-node-v8-411063c6f5750f4a2243ef5154c589109d9b807c.tar.gz
android-node-v8-411063c6f5750f4a2243ef5154c589109d9b807c.tar.bz2
android-node-v8-411063c6f5750f4a2243ef5154c589109d9b807c.zip
module: add createRequire method
This is an abstraction on top of creatRequireFromPath that can accept both paths, URL Strings, and URL Objects. PR-URL: https://github.com/nodejs/node/pull/27405 Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Jan Krems <jan.krems@gmail.com> Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: Rich Trott <rtrott@gmail.com>
Diffstat (limited to 'test/parallel/test-module-create-require.js')
-rw-r--r--test/parallel/test-module-create-require.js24
1 files changed, 23 insertions, 1 deletions
diff --git a/test/parallel/test-module-create-require.js b/test/parallel/test-module-create-require.js
index 03ed31939f..fa25b87f95 100644
--- a/test/parallel/test-module-create-require.js
+++ b/test/parallel/test-module-create-require.js
@@ -4,9 +4,31 @@ require('../common');
const assert = require('assert');
const path = require('path');
-const { createRequireFromPath } = require('module');
+const { createRequire, createRequireFromPath } = require('module');
const p = path.resolve(__dirname, '..', 'fixtures', 'fake.js');
+const u = new URL(`file://${p}`);
const req = createRequireFromPath(p);
assert.strictEqual(req('./baz'), 'perhaps I work');
+
+const reqToo = createRequire(u);
+assert.deepStrictEqual(reqToo('./experimental'), { ofLife: 42 });
+
+assert.throws(() => {
+ createRequire('https://github.com/nodejs/node/pull/27405/');
+}, {
+ code: 'ERR_INVALID_ARG_VALUE'
+});
+
+assert.throws(() => {
+ createRequire('../');
+}, {
+ code: 'ERR_INVALID_ARG_VALUE'
+});
+
+assert.throws(() => {
+ createRequire({});
+}, {
+ code: 'ERR_INVALID_ARG_VALUE'
+});