maquette PHPUnit avec plusieurs attend () appels
-
27-10-2019 - |
Question
Utilisation de PHPUnit, je me demande comment nous pouvons avoir plusieurs attentes de la même souche / faux.
Par exemple, je veux tester que la maquette aura la méthode display()
appelé et NULL de retour. Je veux aussi test qui sera appelé la méthode process()
.
En fait mon test est appelé testProcessIsCalledIfDisplayReturnNull()
.
Je dois installer 2 attentes sur le même objet fantaisie, et le manuel ne vraiment pas d'aide à ce sujet: (
La solution
Si vous le savez, cette méthode est appelée une fois l'utilisation $ this-> une fois () en attend (), utiliser autrement $ this-> any ()
$mock = $this->getMock('nameOfTheClass', array('firstMethod','secondMethod','thirdMethod'));
$mock->expects($this->once())
->method('firstMethod')
->will($this->returnValue('value'));
$mock->expects($this->once())
->method('secondMethod')
->will($this->returnValue('value'));
$mock->expects($this->once())
->method('thirdMethod')
->will($this->returnValue('value'));
Autres conseils
Je l'ai essayé, et il semble œuvres aussi longtemps que le séjour de l'ordre d'appel bon:
$mock = $this->getMock('mockWorker', array('display', 'process'));
$mock->expects($this->exactly(1))
->method('display')
->will($this->returnValue(null));
$mock->expects($this->exactly(1))
->method('process');
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow