有没有办法存根猫鼬模型的虚拟属性?
假设Problem
是一个模型类,并且difficulty
是一个虚拟属性。delete Problem.prototype.difficulty
返回 false,并且该属性仍然存在,因此我无法将其替换为我想要的任何值。
我也试过
var p = new Problem();
delete p.difficulty;
p.difficulty = Problem.INT_EASY;
它没有用。
将未定义分配给Problem.prototype.difficulty
或使用sinon.stub(Problem.prototype, 'difficulty').returns(Problem.INT_EASY);
将引发异常“TypeError:无法读取未定义的属性'范围'”,同时执行
var p = new Problem();
sinon.stub(p, 'difficulty').returns(Problem.INT_EASY);
会抛出错误“TypeError:尝试将字符串属性难度包装为函数”。
我的想法不多了。帮帮我!谢谢!