public function testSendPostRequestWorksWithoutLogger() { $this->loggerMock = null; $this->httpClientMock->method('createRequest')->willReturn(new \GuzzleHttp\Message\Request('POST', 'someUrl')); $this->httpClientMock->method('send')->willReturn($this->createFutureResponse(200, '{"someData":8}')); $requestMaker = $this->createRequestMaker(); $requestMaker->sendPostRequest('somerUrl'); $this->assertTrue(true); }
/** * Prepares guzzle to respond to a method with a specific mocked response * * @param string $path relative path, excluding base url * @param mixed $response * @param string $method POST/GET/etc * @param int $statusCode * @param string $reasonPhrase */ protected function prepareGuzzleMockResponse($path, $response, $method = 'POST', $statusCode = 200, $reasonPhrase = 'OK') { $responseMock = $this->getMockBuilder(Response::class)->getMock(); $responseBodyMock = $this->getMockBuilder(StreamInterface::class)->getMock(); $responseBodyMock->method('getContents')->willReturn(json_encode($response)); $responseMock->method('getStatusCode')->willReturn($statusCode); $responseMock->method('getReasonPhrase')->willReturn($reasonPhrase); $responseMock->method('getHeaders')->willReturn([]); $responseMock->method('getBody')->willReturn($responseBodyMock); $this->guzzleMock->method('request')->with($method, rtrim(static::BASE_API_URL, '/') . '/' . $path)->willReturn($responseMock); }
public function testOptions() { $this->guzzleClient->method('options')->willReturn(new Response(1337)); $this->assertEquals(1337, $this->client->options('http://localhost/', [])->getStatusCode()); }