How can I mock one method with RhinoMocks in VB.Net? The reference I found is in C#:
Expect.Call(delegate{list.Add(0);}).IgnoreArguments() .Do((Action<int>)delegate(int item) { if (item < 0) throw new ArgumentOutOfRangeException(); });
SharpDevelop converts this to:
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)))
But that doesn’t work either (it doesn’t compile).
This is what I want to do: create a new object and call a method which sets some properties of that method. In real-life this method, will populate the properties with values found in the database. In test, I would like to mock this method with a custom method/delegate so that I can set the properties myself (without going to the database).
In pseudo-code, this is what I’m trying to do:
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')
Unfortunately you’re attempting to do both a Sub lambda and a Statement Lambda. Neither are supported in VS2008 (but will be in the upcoming version of VS). Here is the expanded version that will work for VB
I’m guessing at the type of m_list