Enfim, nesse caso posso dizer que é gosto. Eu não gosto.
Quanto aos testes, é possível testar numa boa usando ISession...
O Entity Framework ainda tem essa coisa de DbSet? Eu sempre achei q eles tinham se enganado no design disso e iam tirar nas versões futuras. O DbContext tem os DbSet's dentro dele? Se isso ainda funciona dessa forma, acho importante o Repository.
A ideia dos Extensions Methods eu acho legal, principalmente se a query se repete.
Uma curiosidade: esse projeto que você está fazendo é pra estudar ou é "pra valer"? Se for para estudar e aprender, você deveria tentar também outras formas de acesso a dados, muitas vezes até SQL direto é melhor. Além disso existem os Micro ORMs. Hoje em dia só não tem opção quem não quer.