michael michael - 6 months ago 263
Node.js Question

Stubbing an ES6 class method using Mocha and Sinon in NodeJS

Is there a way to stub an ES6 class method using Mocha/Sinon?

I'm trying to do this...

sinon.stub(Factory, 'announce');


but I just get the following error...

TypeError: Attempted to wrap undefined property announce as function

Answer

Instance methods are still placed on the prototype object of a class to be inherited from, not on its constructor, even if the class syntax obscures that a bit. Use

sinon.stub(Factory.prototype, 'announce');