que - Cómo probar un segundo parámetro en un objeto simulado PHPUnit
pruebas unitarias php (1)
Esto es lo que tengo:
$observer = $this->getMock(''SomeObserverClass'', array(''method''));
$observer->expects($this->once())
->method(''method'')
->with($this->equalTo($arg1));
Pero el método debe tomar dos parámetros. Solo estoy probando que el primer parámetro se está pasando correctamente (como $ arg1).
¿Cómo se prueba el segundo parámetro?
Creo que la forma de hacerlo es:
$observer->expects($this->once())
->method(''method'')
->with($this->equalTo($arg1),$this->equalTo($arg2));
O
$observer->expects($this->once())
->method(''method'')
->with($arg1, $arg2);
Si necesita realizar un tipo diferente de afirmación en el 2do arg, puede hacer eso también:
$observer->expects($this->once())
->method(''method'')
->with($this->equalTo($arg1),$this->stringContains(''some_string''));
Si necesita asegurarse de que algún argumento pase múltiples aserciones, use logicalAnd ()
$observer->expects($this->once())
->method(''method'')
->with($this->logicalAnd($this->stringContains(''a''), $this->stringContains(''b'')));