Skip to content

Commit

Permalink
isFile and readFileSync as parameters
Browse files Browse the repository at this point in the history
  • Loading branch information
James Halliday committed Oct 3, 2011
1 parent 9fbb632 commit d30c22d
Showing 1 changed file with 8 additions and 4 deletions.
12 changes: 8 additions & 4 deletions index.js
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,10 @@ exports.sync = function (x, opts) {
if (core[x]) return x;

if (!opts) opts = {};
var isFile = opts.isFile || function (file) {
return path.existsSync(file) && fs.statSync(file).isFile()
};
var readFileSync = opts.readFileSync || fs.readFileSync;

var extensions = opts.extensions || [ '.js' ];
var y = opts.basedir
Expand All @@ -33,22 +37,22 @@ exports.sync = function (x, opts) {
throw new Error("Cannot find module '" + x + "'");

function loadAsFileSync (x) {
if (path.existsSync(x) && fs.statSync(x).isFile()) {
if (isFile(x)) {
return x;
}

for (var i = 0; i < extensions.length; i++) {
var file = x + extensions[i];
if (path.existsSync(file) && fs.statSync(file).isFile()) {
if (isFile(file)) {
return file;
}
}
}

function loadAsDirectorySync (x) {
var pkgfile = x + '/package.json';
if (path.existsSync(pkgfile) && fs.statSync(pkgfile).isFile()) {
var body = fs.readFileSync(pkgfile, 'utf8');
if (isFile(pkgfile)) {
var body = readFileSync(pkgfile, 'utf8');
try {
var pkg = JSON.parse(body);
if (opts.packageFilter) {
Expand Down

0 comments on commit d30c22d

Please sign in to comment.