1
그래서 기본적으로 컨트롤러에 내 의존성을 모의하려고 노력 중이며 ordered()
조롱의 기능을 사용하려고합니다.조롱 주문 된 조롱
$request = \Mockery::mock('Silhouette\Http\Request');
$response = \Mockery::mock('Silhouette\Http\Response');
$response->shouldReceive("setContent")->ordered();
$db = \Mockery::mock('Dabble\Database');
$configData = \Mockery::mock('Silhouette\Configuration\ConfigurationData');
$configData->shouldReceive("get")->andReturn(array(18, 23))->ordered();
위의 테스트하여 $configData->get()
가 컨트롤러의 $response->setContent()
전에 호출되는 경우에도 성공적이다. 또한 mock의 순서를 바꾸면 나는 여전히 성공적인 테스트를합니다.
$request = \Mockery::mock('Silhouette\Http\Request');
$db = \Mockery::mock('Dabble\Database');
$configData = \Mockery::mock('Silhouette\Configuration\ConfigurationData');
$configData->shouldReceive("get")->andReturn(array(18, 23))->ordered();
$response = \Mockery::mock('Silhouette\Http\Response');
$response->shouldReceive("setContent")->ordered();
내가 여기 잘못 생각한가요? 감사합니다
이 방법이 유사하게 표시 방법과 관련하여 특정 순서로 호출 될 것으로 예상 함을 선언합니다. 그래서 그들은 같은 조롱 된 객체의 메서드를 의미합니다. 감사! –