Pergunta

Encontrei um problema ao tentar testar o seguinte IRepository baseado no NHibernate:

public class NHibernateRepository<T>: Disposable, IRepository<T> 
    where T : IdentifiableObject
{
    ...

    public IQueryable<T> Query()
    {
        return NHibernateSession.Linq<T>();
    }
}

Como diabos zombar do retorno IQueryable<T> na forma como retorna determinada coleção em troca de determinada expressão.Sinto que tenho algum mal-entendido sobre IQueryable<T>...

Foi útil?

Solução

Em Moq seria:

mockRepository.Expect( r => r.Query() ).Returns( myEnumerable.AsQueriable() );

Em RhinoMocks seria:

Expect.Call( repository.Query() ).Return( myEnumerable.AsQueriable() );
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top