Moq - выражение Linq в хранилище - укажите выражение в настройке
У меня есть метод в моем интерфейсе, который выглядит следующим образом:
T GetSingle(Expression criteria);
я пытаюсь смоделировать настройку что-то вроде этого (я понимаю, это нет работает):
_mockUserRepository = new Mock();
_mockUserRepository.Setup(c => c.GetSingle(x => x.EmailAddress == "[email protected]"))
.Returns(new User{EmailAddress = "[email protected]"});
Я понимаю, что ям, передав неверный параметр в настройку.
После прочтенияэтот ответ Я могу заставить его работать, передав выражение, например так:
_mockUserRepository.Setup(c => c.GetSingle(It.IsAny())
.Returns(new User{EmailAddress = "[email protected]"});
Тем не менее, это означает, что если я позвонюGetSingle
метод с любым выражением, тот же результат возвращается.
Есть ли способ указать в настройках, какое выражение использовать?