Pregunta

Me encontré con un problema al intentar probar el siguiente IRepository basado en NHibernate:

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

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

¿Cómo diablos burlarse del regreso? IQueryable<T> se realiza en la forma en que devuelve una colección dada a cambio de cierta expresión.Siento que tengo algún malentendido IQueryable<T>...

¿Fue útil?

Solución

En Moq sería:

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

En RhinoMocks sería:

Expect.Call( repository.Query() ).Return( myEnumerable.AsQueriable() );
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top