VB.Net で RhinoMocks を使用して 1 つのメソッドをモックするにはどうすればよいですか? 私が見つけた参照はC#にあります:
Expect.Call(delegate{list.Add(0);}).IgnoreArguments()
.Do((Action<int>)delegate(int item) {
if (item < 0) throw new ArgumentOutOfRangeException();
});
SharpDevelop はこれを次のように変換します。
Expect.Call(Function() Do
list.Add(0)
End Function).IgnoreArguments().Do(DirectCast(Function(item As Integer) Do
If item < 0 Then
Throw New ArgumentOutOfRangeException()
End If
End Function, Action(Of Integer)))
しかし、それも機能しません (コンパイルされません)。
これが私がやりたいことです: 新しいオブジェクトを作成し、そのメソッドのいくつかのプロパティを設定するメソッドを呼び出します。実際には、このメソッドは、データベースで見つかった値をプロパティに取り込みます。テストでは、このメソッドをカスタム メソッド/デリゲートでモックして、(データベースにアクセスせずに) 自分でプロパティを設定できるようにしたいと考えています。
疑似コードでは、これが私がやろうとしていることです:
Dim _lookup As LookUp = MockRepository.GenerateMock(Of LookUp)()
_luvalue.Expect(Function(l As LookUp) l.GetLookUpByName("test")).Do(Function(l As LookUp) l.Property = "value")