Ben PHPUnit davalarını nesneleri ile garip bir sorun haline çalıştırmak. Ben iki kez aranmalıdır bir yöntem var, bu yüzden eşleşmenin "at" kullanıyorum. Bu yöntem denir ilk kez çalışıyor, ama nedense, deniyor ikinci kez, ben "Alay yöntem yok." Olsun. Ben önce eşleşmenin "at" kullandım ve bu çalıştırmak hiç.
Benim kod gibi bir şey görünüyor:
class MyTest extends PHPUnit_Framework_TestCase
{
...
public function testThis()
{
$mock = $this->getMock('MyClass', array('exists', 'another_method', '...'));
$mock->expects($this->at(0))
->method('exists')
->with($this->equalTo('foo'))
->will($this->returnValue(true));
$mock->expects($this->at(1))
->method('exists')
->with($this->equalTo('bar'))
->will($this->returnValue(false));
}
...
}
Ben testi çalıştırdığınızda, ben alıyorum:
Expectation failed for method name is equal to <string:exists> when invoked at sequence index 1.
Mocked method does not exist.
Ben ikinci eşleştirici kaldırırsanız, ben hata alamadım.
Herkes önce bu çalıştırmak vardır?
Teşekkürler!