PHPUnit: Potwierdź parametr, gdy przekaże go do próbnego obiektu
Dla poniższego kodu
$mockObject->expects($this->at(0))
->method('search')
->with($searchConfig)
->will($this->returnValue([]));
Ta linia spowoduje automatyczne potwierdzenie, że przy wywołaniu metodysearch
musi zawierać$searchConfig
parametry. W tym przypadku musimy zapewnić całkowicie dopasowane$searchConfig
ale czasami jest to trudne, jeśli jest to tablica lub obiekt.
Czy istnieje jakikolwiek możliwy sposób, aby zezwolić PHPUnit na wywołanie jakiejś konkretnej metody stwierdzenia, że zawiera ona argumenty przekazane metodą, jakiej chcemy?
Na przykład mogę utworzyć funkcję zamknięcia, aby potwierdzić jak poniżej, zamiast używać->with()
metoda
function ($config){
$this->assertFalse(isset($config['shouldnothere']));
$this->assertTrue($config['object']->isValidValue());
}