以下のコードがあると想像してください
public class test
{
public void Condition(x,y)
{
if (x == y)
{
methodOne();
}
else
{
methodTwo();
}
}
public void methodOne(){//do some database stuff}
public void methodTwo(){//do some database stuff}
}
x==y の場合に methodone が呼び出されるかどうかをアサートしたいが、テストでメソッド 1 内のコードを実行したくない場合は、データベース関連の処理を行うため...
私はこのようなことを書いています
MockRepository mockRepository=new MockRepository();
var Mock = mockRepository.PartialMock<test>();
mock.Replay();
mock.condition(1,1);
mock.AssertWasCalled(x=>x.methodOne);
mock.VerifyAllExpectations();
しかし、メソッド1でも実行しようとしますが、テストでデータベース接続を実行したくありません。条件が機能しており、呼び出されたかどうかを確認するだけです。