У меня возникла проблема при попытке протестировать следующий IRepository на основе NHibernate:
public class NHibernateRepository<T>: Disposable, IRepository<T>
where T : IdentifiableObject
{
...
public IQueryable<T> Query()
{
return NHibernateSession.Linq<T>();
}
}
Как, черт возьми, издеваться над возвращением IQueryable<T> таким образом, чтобы он возвращал данную коллекцию в обмен на определенное выражение. Я чувствую, что неправильно понимаю IQueryable<T> ...





В Moq это будет:
mockRepository.Expect( r => r.Query() ).Returns( myEnumerable.AsQueriable() );
В RhinoMocks это будет:
Expect.Call( repository.Query() ).Return( myEnumerable.AsQueriable() );