Почему мой предоставленный предикат не сопоставляется при использовании Moq?C#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Почему мой предоставленный предикат не сопоставляется при использовании Moq?

Сообщение Anonymous »

Дайте простой тип, который я тестирую, скажем

Код: Выделить всё

interface IMyRepo
{
MyObj GetBy(Expression x.GetBy(y => y.Prop=="A")).Returns(myObjInstance);
Он соответствует, например: _repo.GetBy(x => x.Prop=="A")
Однако , если у меня есть вспомогательный метод для моей настройки:
_

Код: Выделить всё

repoMock.Setup(Helpers.GenerateGetByMock(y => y.Prop=="A"));
где

Код: Выделить всё

Expression GenerateGetByMock(Expression pred) where T : IMyRepo where R : class
{
return x => x.GetBy(pred);
}
Это не будет соответствовать тесту _repo.GetBy(x => x.Prop=="A")!
В чем разница в сгенерированных выражениях и почему мне нужно использовать явную встроенную версию? Есть ли способ использовать подход вспомогательного метода?
Изменить: Вот макет выражения со встроенной версией:
Изображение

по сравнению со вспомогательным методом:
Изображение


Подробнее здесь: https://stackoverflow.com/questions/792 ... -using-moq
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»