Tôi đang cố gắng để có được Mockery để khẳng định rằng một phương pháp nhất định được gọi là ít nhất một lần.Mockery shouldReceive() -> once() dường như không hoạt động
lớp thử nghiệm của tôi là:
use \Mockery as m;
class MyTest extends \PHPUnit_Framework_TestCase
{
public function testSetUriIsCalled()
{
$uri = 'http://localhost';
$httpClient = m::mock('Zend\Http\Client');
$httpClient->shouldReceive('setUri')->with($uri)->atLeast()->once();
}
}
Như bạn thấy, có một bài kiểm tra đó (hy vọng) tạo ra một kỳ vọng rằng setUri sẽ được gọi. Vì không có bất kỳ mã nào khác có liên quan, tôi không thể tưởng tượng rằng nó có thể được gọi là nhưng chưa được kiểm tra. Bất cứ ai có thể giải thích lý do tại sao?