如果您对 getter/setter 使用以下 es6 语法class Person { constructor(name) { this._name = name; } get name() { return this._name.toUpperCase(); } set name(newName) { this._name = newName; } }你将如何存根 getter 方法?const john = new Person('john')sinon.createSandbox().stub(john, 'name').returns('whatever')似乎没有工作。
1 回答
慕桂英3389331
TA贡献2036条经验 获得超8个赞
Github问题导致我:sinon js doc
stub.get(getterFn)
替换此存根的新吸气剂。
var myObj = {
prop: 'foo'
};
sinon.stub(myObj, 'prop').get(function getterFn() {
return 'bar';
});
myObj.prop; // 'bar'
stub.set(setterFn)
为此存根定义一个新的设置器。
var myObj = {
example: 'oldValue',
prop: 'foo'
};
sinon.stub(myObj, 'prop').set(function setterFn(val) {
myObj.example = val;
});
myObj.prop = 'baz';
myObj.example; // 'baz'
添加回答
举报
0/150
提交
取消