El otro día estaba leyendo un poco sobre Unit Testing y vi algunos ejemplos en los que las personas crean una interfaz de repositorio (es decir IExampleRepository) y luego crean el repositorio real ( public class ExampleRepository : IExampleRepository) y un repositorio que se utilizará para las pruebas unitarias ( FakeExampleRepository : IExampleRepository).
En el IExampleRepositoryestaban implementando los mismos métodos que en el ExampleRepository, sin embargo, con diferentes consultas Linq.
¿Cuál es exactamente el objetivo aquí? ¿Pensé que una parte de la unidad que prueba su código es asegurarse de que un método funcione correctamente? Pero cuando uso dos consultas totalmente diferentes, una para 'real' y otra en la prueba, ¿qué sentido tiene la prueba?