Возможно, это из-за того, что вы передаете null
, но It.IsAny<Object>()
ожидает каких-либо object
кроме null
?Что произойдет, если вы сделаете следующее?:
var actual = mock.Object.Convert(value, new object(), typeof(object), CultureInfo.CurrentCulture);
Это всего лишь удар в темноте от меня, я больше знаком с Rhino.Mocks.
Мой второйугадайте:
Посмотрев на Moq.chm, который поставляется вместе с загрузкой,
Вы используете метод Setup(Expression<Action<T>>)
, который "Определяет настройку по ложному типу для вызова void
method. "
Требуется метод Setup<TResult>(Expression<Func<T,TResult>>)
, который" Определяет настройку по ложному типу для вызова метода, возвращающего значение ".
Итак, вы можете попробовать:
mock.Setup<Int32>(
conv => {
conv.Convert(
It.IsAny<Object>(),
It.IsAny<Type>(),
It.IsAny<Object>(),
It.IsAny<CultureInfo>());
return num + 5;
});