Tengo un caso de uso simple. Quiero tener un método de configuración que hará que mi objeto de burla para devolver un valor predeterminado:PHPUnit Mock Cambia las expectativas más tarde
$this->myservice
->expects($this->any())
->method('checkUniqueness')
->will($this->returnValue(true));
Pero entonces, en algunos pruebas, quiero devolver un valor diferente:
$this->myservice
->expects($this->exactly(1))
->method('checkUniqueness')
->will($this->returnValue(false));
I Ya utilicé GoogleMock para C++ en el pasado y tenía "returnByDefault" o algo para manejar eso. No pude averiguar si esto es posible en PHPUnit (no hay documentación de API y el código es difícil de leer para encontrar lo que quiero).
Ahora no puedo simplemente cambiar $this->myservice
a un nuevo simulacro, porque en la configuración, lo paso a otras cosas que deben ser burladas o probadas.
Mi única otra solución es que pierdo el beneficio de la configuración y en su lugar tengo que construir todos mis simulacros para cada prueba.
¿Cómo puede esto resolver el problema? El método 'setUp()' se llamaría de todos modos –
@MassimilianoArione sí, pero puede volver a crear su '$ this-> myservice' y cambiar el valor de retorno – rndstr