У меня есть функция, которую я издеваюсь, которая принимает объект аргумента в качестве параметра. Я хочу вернуть результат, основанный на значениях в объекте. Я не могу сравнивать объекты, поскольку Equals не переоценивается.
У меня есть следующий код:
_tourDal.Stub(x => x.GetById(Arg<TourGet>.Matches(y => y.TourId == 2), null)).Return(
new Tour()
{
TourId = 2,
DepartureLocation = new IataInfo() { IataId = 2 },
ArrivalLocation = new IataInfo() { IataId = 3 }
});
Это должно возвращать объект, указанный в том случае, если поставляемый параметр имеет TourId из 2.
Похоже, что он должен работать, но когда я его запускаю, я получаю следующее исключение:
При использовании Arg все аргументы должны быть определены с помощью Arg.Is, Arg.Text, Arg.List, Arg.Ref или Arg.Out. 2 аргумента ожидается, 1. были определены.
Любые идеи, что мне нужно сделать, чтобы решить эту проблему?