1

以下のコードスニペットは、私が達成しようとしていることを最もよく説明しています。

[Test]
public void ReplayGoalTeamATest()
{
    var stateMachineMock = new Mock<IIceHockeyOddsStateMachine>();

    new IceHockeyActionLogRecord { Event = "goal", Team = "A"}.Replay(stateMachineMock.Object);

    stateMachineMock.Verify(s=>s.TeamAScore++); //Syntax error
}
4

3 に答える 3

2

IIceHockeyOddsStateMachine インターフェイスに getter と setter の両方がある場合、値が次のようにインクリメントされたことを確認できます。

var stateMachineMock = new Mock<IIceHockeyOddsStateMachine>();

stateMachineMock.SetupAllProperties();

stateMachineMock.Object.TeamAScore = 0;

new IceHockeyActionLogRecord { Event = "goal", Team = "A"}.Replay(stateMachineMock.Object);

Assert.That(stateMachineMock.Object.TeamAScore, Is.EqualTo(1));
于 2012-05-14T10:50:27.923 に答える
0

代わりに .CallBack() メソッドを使用してみましたか? Verifyが上記の実装をサポートしているかどうかわからない

于 2012-05-14T10:47:15.620 に答える