When the preload module is not a abs/relative path, we should use the standard search mechanism of looking into the node_modules folders outwards. The current working directory is deemed to be the 'requiring module', i.e. parent. The search path starts from cwd outwards. Fixes: https://github.com/nodejs/io.js/issues/1803 PR-URL: https://github.com/nodejs/io.js/pull/1812 Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com>
12 lines
534 B
JavaScript
12 lines
534 B
JavaScript
var assert = require('assert');
|
|
|
|
// https://github.com/nodejs/io.js/issues/1803
|
|
// this module is used as a preload module. It should have a parent with the
|
|
// module search paths initialized from the current working directory
|
|
assert.ok(module.parent);
|
|
var expectedPaths = require('module')._nodeModulePaths(process.cwd());
|
|
assert.deepEqual(module.parent.paths, expectedPaths);
|
|
|
|
var cluster = require('cluster');
|
|
cluster.isMaster || process.exit(42 + cluster.worker.id); // +42 to distinguish
|
|
// from exit(1) for other random reasons
|