Попытка юнит-тестирования NHibernate и единицы работы, однако, натолкнулись на кирпичную стену при попытке смоделировать методы доступа к данным, возвращающие IQueryable?
Это работает:
var employee = Helper.GetEmployee();
Repository.Stub(x => x.FindById<Employee>(employee.Id)).Return(employee);
Это не работает:
var employee = Helper.GetEmployee();
var employeeList = new List<Employee> { employee };
Repository.Stub(x => x.All<Employee>().ToList()).Return(employeeList);
По сути, все, что возвращает> 1 сотрудника, я не могу смутно себя вести.
Репозиторий Метод FindById возвращает:
Session.Get<TEntity>(id);
Репозиторий All метод возвращает:
Session.Query<TEntity>();
Когда модульный тест запускает макет репозитория All, метод возвращает исключение, говоря, что источник не может быть нулевым?
Я застрял, есть идеи?
Спасибо!Тим