Rhino Mocks LastCallをいつ使用すべきか、Expect.Callをいつ使用すべきかを説明できますか?私は、Expect.Callがラッパー内の単なるLastCallであることを収集しました。また、Rhino Mocksで戻り値を処理するときは、Expect.Callを使用する必要があると思います。
質問する
543 次
1 に答える
2
using (mocks.Record())
{
myMock.AVeryMeaningFullMethodThatDoesNotReturnAValue("a to be ignored parameter");
LastCall.IgnoreArguments();
Expect.Call(myMock.AnotherMethodThatDoesReturnAValue()).IgnoreArguments().Returns("barney");
}
最初に少し紹介します。モードではRecord
、「モック」環境の動作を指定できます。これを行うことはできますが、期待するメソッドを指定するだけです。
myMock.AVeryMeaningFullMethodThatDoesNotReturnAValue("a to be ignored parameter");
または、モックフレームワークを介してこれを行うことができます。
Expect.Call(myMock.Do("stuff")).Return("something");
最初のケースでは、モックされたメソッドは値を返さないため、Rhinoモックフレームワークのメソッドを呼び出すことはできません。Expect.Call()
リターンタイプを要求します。プログラマーがRhinoのモック動作(例IgnoreArguments()
)を指定できるようにするために、静的クラスを提供しますLastCall
。
そうすればIgnoreArguments
、まだvoidメソッドを使用できます。または、何度も繰り返すことを期待することを指定します(LastCall.Repeat.Any()
)。
于 2013-02-03T20:12:52.823 に答える