Utility library that allows you to inject your mocks into modules code

npm install require-mocked
2 downloads in the last day
16 downloads in the last week
101 downloads in the last month


Node.js library that allows you to inject your mocks into your modules code.


npm install require-mocked


Suppose you want to test some module that uses fs (eiser directly, or throught one of its dependencies) but you want it to use some stun instead of the real FS.

var requireMocked = require('require-mocked');

var moduleUnderTest = requireMocked(require.resolve('./path/to/your/module'), {
    mocks: {
        fs: {
            //your stub code

Module exposes single function - requireMocked. It accepts following parameters:

  • path - absolute path to the module you want to load. Use require.resolve to get it from relative path;
  • opts - loading options:
    • opts.mocks - mocks to use when loading module or its dependencies. Keys of the object represents module ids, values - the object to use instead of real module.
    • opts.resolves - stub require.resolve for the loaded module so it will return given path for instead of original. Format is {"moduleId": "stub/path"}.
    • opts.ignoreMocks - array of the module id that will always load real modules instead of mocks.

Similar projects

  • SandboxedModule - doesn't support recursive mocking, but may be more functional in other areas.


Licensed under MIT license.

npm loves you