stubo (pronounced stub-oh) is a simple JavaScript stubbing component. It's useful for creating stub objects for AngularJS tests or proxyquire tests.
Sinon is a great library that supports stubbing. But unfortunately it only supports stubbing one level deep.
npm i --save stubo
stubo
allows you to convert this:
var stub = {
window: {
localStorage: {
getItem: function () {
return 'data'
},
length: 1
}
}
}
to this:
var stubo = require('stubo')
var stub = {}
stubo(stub, 'window', 'localStorage.getItem()', 'data')
stubo(stub, 'window', 'localStorage.length', 1)
MIT