I really dont get these things, why not just define ./log.js and do module.exports = require('my-chosen-log-module');
We expose stuff with NODE_PATH=lib so require('log') in that case but delegate to some other module or apply some thin wrappers. This is pretty common but all this DI stuff just seems to complicate something pretty simple On May 16, 9:48 am, mgutz <mario.l.gutier...@gmail.com> wrote: > https://github.com/mgutz/inj > > I didn't like all the AngularJS wannabes. node.js has perfectly fine module > system already. > > Inj is a KISS, require based dependency injector (DI) for node.js > > - no monkey patches > - no autowire needed, just use require > > *reader.js* > > require = require('inj')(module, require); > > var fs = require('fs'); > exports.text = fs.readFileSync(__dirname + './file.txt', 'utf8'); > > *readerTest.js* > > // first create container for `reader` > var inj = require('inj'); > var container = inj.create(require.resolve('./reader')); > > // register a mocked 'fs' > container.register('fs', {readFileSync: function() { return 'foo'; }); > > var a = require('./reader'); > assert(a.text, 'foo'); -- -- Job Board: http://jobs.nodejs.org/ Posting guidelines: https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines You received this message because you are subscribed to the Google Groups "nodejs" group. To post to this group, send email to nodejs@googlegroups.com To unsubscribe from this group, send email to nodejs+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/nodejs?hl=en?hl=en --- You received this message because you are subscribed to the Google Groups "nodejs" group. To unsubscribe from this group and stop receiving emails from it, send an email to nodejs+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.