У меня есть метод на интерфейсе, который выглядит следующим образом, и я хочу заглушить его с помощью Rhino Mocks:
TValue GetPropertyOfExistingObject<TValue>(long id, Expression<Func<T, TValue>> propertyExpression);
Мой код, который выполняет заглушки, выглядит так:
var service = MockRepository.GenerateStub<IQuoteService>();
service.Stub(s => s.GetPropertyOfExistingObject(1, q => q.QuoteNumber)).Return(1234);
Обратите внимание, что одним из параметров в этом методе является Expression<Func<T1, T2>>
, и эта заглушка не возвращает указанное значение. Я знаю, что могу сделать это с помощью WhenCalled (), но мне было интересно, должен ли Stub () работать с параметрами выражения или я просто что-то не так делаю.