У меня есть следующий код в PHP:
$response = $this->client->request('GET', $path, $requestBody, $headers);
$isRequestSuccess = $response->getStatusCode() === "200";
if ($isRequestSuccess) {
return $response->getBody()->getContents();
}
Похоже, мне удалось создать макет запроса:
$mockResponse = \Mockery::mock('GuzzleHttp\Psr7\Response');
$clientMock
->shouldReceive('request')
->once()
->withAnyArgs()
->andReturn($mockResponse);
$clientMock->shouldReceive('getStatusCode')->andReturn(200);
Но как мне используйте Mockery для имитации getStatusCode
?
Он должен возвращать Psr7\Response
объект GuzzleHttp
.
Я знаю, что возвращаемое значение $clientMock
должно быть присвоено параметру, но как мне издеваться над
$response->getStatusCode();
и
$response->getBody()->getContents()
Если я собираюсь издеваться над getStatusCode
и возвращать 200, я получаю следующую ошибку:
Method Mockery_4_GuzzleHttp_Psr7_Response::getStatusCode() does not exist on this mock object