| var test = require('tape'); |
| var resolve = require('../'); |
| |
| test('#62: deep module references and the pathFilter', function(t){ |
| t.plan(9); |
| |
| var resolverDir = __dirname + '/pathfilter/deep_ref'; |
| var pathFilter = function(pkg, x, remainder){ |
| t.equal(pkg.version, "1.2.3"); |
| t.equal(x, resolverDir + '/node_modules/deep/ref'); |
| t.equal(remainder, "ref"); |
| return "alt"; |
| }; |
| |
| resolve('deep/ref', { basedir : resolverDir }, function (err, res, pkg) { |
| if (err) t.fail(err); |
| |
| t.equal(pkg.version, "1.2.3"); |
| t.equal(res, resolverDir + '/node_modules/deep/ref.js'); |
| }); |
| |
| resolve('deep/deeper/ref', { basedir: resolverDir }, |
| function(err, res, pkg) { |
| if(err) t.fail(err); |
| t.notEqual(pkg, undefined); |
| t.equal(pkg.version, "1.2.3"); |
| t.equal(res, resolverDir + '/node_modules/deep/deeper/ref.js'); |
| }); |
| |
| resolve('deep/ref', { basedir : resolverDir, pathFilter : pathFilter }, |
| function (err, res, pkg) { |
| if (err) t.fail(err); |
| t.equal(res, resolverDir + '/node_modules/deep/alt.js'); |
| }); |
| }); |