【发布时间】:2013-08-02 07:24:12
【问题描述】:
我发现Sinon 不允许你存根属性,只有方法。我试图弄清楚如何处理/接受这个。
我有以下代码:
var Player = {
addPoints: function(points) {
this.score += points;
},
score: 0
}
var Game = {
setPlayers: function(players) {
this.players = players;
},
over: function() {
return this.players.some(function(player) {
return player.score >= 100;
});
},
}
这是我写的一个测试:
describe("Game", function() {
it("is over if a player has at least 100 points", function() {
var game = Object.create(Game);
player = Object.create(Player);
game.setPlayers([player]);
player.addPoints(100);
game.over().should.be.true;
});
});
当我在测试Game 时,我不得不在Player 上打电话给addPoints(),这让我感觉不对。我最初的直觉是存根Player.points,但我不能这样做,因为Sinon只存根属性,而不是方法。
我应该怎么想?
【问题讨论】:
标签: javascript sinon