Skip to content

Mock object methods and properties

License

Notifications You must be signed in to change notification settings

fent/muk-prop.js

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

98 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

muk-prop.js

Build Status Dependency Status codecov

muk

Usage

Object method mocking.

const fs = require('fs');
const muk = require('muk-prop');

muk(fs, 'readFile', (path, callback) => {
  process.nextTick(callback.bind(null, null, 'file contents here'));
});

Object props mocking with setter/getter.

const muk = require('muk-prop');

const obj = { _a: 1 };
muk(obj, 'a', {
  set: (val) => obj._a = val * 2,
  get: (val) => obj._a,
});

obj.a = 2;
console.log(obj.a); // 4

Check if member has been mocked.

muk.isMocked(fs, 'readFile'); // true

Restore all mocked methods/props after tests.

muk.restore();

fs.readFile(file, (err, data) => {
  // will actually read from `file`
});

Install

npm install muk-prop

Tests

Tests are written with mocha

npm test