Można stwierdzić, ile razy Mock został wywołany z PHPUnit robiąc
$mock = $this->getMock('SomeClass');
$mock->expects($this->exactly(5))
->method('someMethod')
->with(
$this->equalTo('foo'), // arg1
$this->equalTo('bar'), // arg2
$this->equalTo('baz') // arg3
);
Gdy następnie wywołać coś w TestSubject która wywołuje Mock, PHPUnit nie powiedzie się test, gdy SomeClass SomeMethod nie nazwano pięć razy z argumentami foo, bar, baz. Istnieje liczba additional matchers besides exactly
.
Ponadto do utworzenia testu podwójnego od wersji 4.5 należy PHPUnit as has built-in support for using Prophecy. Więcej informacji na temat tworzenia, konfigurowania i używania kodów pośredniczących, szpiegów i makiet można znaleźć w tej alternatywnej podwójnej strukturze testowej.
Co robi * "Możesz nazywać obiekt naśladując" * znaczy? * "ile razy nazwa" * ... masz na myśli * "została nazwana" *? – netcoder