我正在尝试使用 sinon.js 存根一个方法,但出现以下错误:
Uncaught TypeError: Attempted to wrap undefined property sample_pressure as function
我也去了这个问题(在 sinon.js 中存根和/或嘲笑一个类?)并复制并粘贴了代码,但我得到了同样的错误。
这是我的代码:
Sensor = (function() {
// A simple Sensor class
// Constructor
function Sensor(pressure) {
this.pressure = pressure;
}
Sensor.prototype.sample_pressure = function() {
return this.pressure;
};
return Sensor;
})();
// Doesn't work
var stub_sens = sinon.stub(Sensor, "sample_pressure").returns(0);
// Doesn't work
var stub_sens = sinon.stub(Sensor, "sample_pressure", function() {return 0});
// Never gets this far
console.log(stub_sens.sample_pressure());
这是上述代码的 jsFiddle ( http://jsfiddle.net/pebreo/wyg5f/5/ ),以及我提到的 SO 问题的 jsFiddle ( http://jsfiddle.net/pebreo/9mK5d/1/)。
我确保在 jsFiddle 甚至 jQuery 1.9的外部资源中包含 sinon 。我究竟做错了什么?