public void VoteMayCauseGameConsensus()
{
const int points = 0, projectId = 123, storyId = 456;
var gameRepositoryMock = new Mock<IGameRepository>();
var gameStarterMock = new Mock<IGameStarter>();
gameStarterMock.Setup(o => o.Name).Returns("Rumples");
var returnedScore = -1;
var game = new Game();
game.Consensus += score => returnedScore = score;
var james = new Player { Name = "James" };
game.AddPlayer(james);
game.Play(new Card { Player = james, Points = points });
var rumples = new Player { Name = "Rumples" };
game.AddPlayer(rumples);
gameRepositoryMock.Setup(g => g.Get(projectId, storyId)).Returns(game);
var c = new StoryController(null, gameRepositoryMock.Object, gameStarterMock.Object);
c.Vote(projectId, storyId, points);
Assert.That(returnedScore, Is.EqualTo(points));
}