���� JFIF �� � ( %"1"%)+...383,7(-.-
![]() Server : Apache/2.4.6 (CentOS) OpenSSL/1.0.2k-fips PHP/7.4.20 System : Linux st2.domain.com 3.10.0-1127.10.1.el7.x86_64 #1 SMP Wed Jun 3 14:28:03 UTC 2020 x86_64 User : apache ( 48) PHP Version : 7.4.20 Disable Function : NONE Directory : /home/real/node-v13.0.1/test/fixtures/ |
'use strict'; const common = require('../common'); const assert = require('assert'); const path = require('path'); const nodeModules = path.join(__dirname, 'node_modules'); const nestedNodeModules = path.join(__dirname, 'node_modules', 'node_modules'); const nestedIndex = path.join(__dirname, 'nested-index'); // Test the default behavior. assert.strictEqual( require.resolve('bar'), path.join(nodeModules, 'bar.js') ); // Verify that existing paths are removed. assert.throws(() => { require.resolve('bar', { paths: [] }) }, /^Error: Cannot find module 'bar'/); // Verify that resolution path can be overwritten. { // three.js cannot be loaded from this file by default. assert.throws(() => { require.resolve('three') }, /^Error: Cannot find module 'three'/); // If the nested-index directory is provided as a resolve path, 'three' // cannot be found because nested-index is used as a starting point and not // a searched directory. assert.throws(() => { require.resolve('three', { paths: [nestedIndex] }) }, /^Error: Cannot find module 'three'/); // Resolution from nested index directory also checks node_modules. assert.strictEqual( require.resolve('bar', { paths: [nestedIndex] }), path.join(nodeModules, 'bar.js') ); } // Verify that the default paths can be used and modified. { const paths = require.resolve.paths('bar'); assert.strictEqual(paths[0], nodeModules); assert.strictEqual( require.resolve('bar', { paths }), path.join(nodeModules, 'bar.js') ); paths.unshift(nestedNodeModules); assert.strictEqual( require.resolve('bar', { paths }), path.join(nodeModules, 'bar.js') ); } // Verify that relative request paths work properly. { const searchIn = './' + path.relative(process.cwd(), nestedIndex); // Search in relative paths. assert.strictEqual( require.resolve('./three.js', { paths: [searchIn] }), path.join(nestedIndex, 'three.js') ); // Search in absolute paths. assert.strictEqual( require.resolve('./three.js', { paths: [nestedIndex] }), path.join(nestedIndex, 'three.js') ); // Repeat the same tests with Windows slashes in the request path. if (common.isWindows) { assert.strictEqual( require.resolve('.\\three.js', { paths: [searchIn] }), path.join(nestedIndex, 'three.js') ); assert.strictEqual( require.resolve('.\\three.js', { paths: [nestedIndex] }), path.join(nestedIndex, 'three.js') ); } } // Test paths option validation common.expectsError(() => { require.resolve('.\\three.js', { paths: 'foo' }) }, { code: 'ERR_INVALID_OPT_VALUE', type: TypeError, }); // Verify that the default require.resolve() is used for empty options. assert.strictEqual( require.resolve('./printA.js', {}), require.resolve('./printA.js') );