Skip to content

Commit 376a4f0

Browse files
[HttpClient] ignore the body of responses to HEAD requests
1 parent 6598427 commit 376a4f0

File tree

1 file changed

+27
-0
lines changed

1 file changed

+27
-0
lines changed

HttpClient/Test/HttpClientTestCase.php

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,33 @@ public function testGetRequest()
7272
$response->getContent();
7373
}
7474

75+
public function testHeadRequest()
76+
{
77+
$client = $this->getHttpClient(__FUNCTION__);
78+
$response = $client->request('HEAD', 'http://localhost:8057', [
79+
'headers' => ['Foo' => 'baR'],
80+
'user_data' => $data = new \stdClass(),
81+
]);
82+
83+
$this->assertSame([], $response->getInfo('response_headers'));
84+
$this->assertSame($data, $response->getInfo()['user_data']);
85+
$this->assertSame(200, $response->getStatusCode());
86+
87+
$info = $response->getInfo();
88+
$this->assertNull($info['error']);
89+
$this->assertSame(0, $info['redirect_count']);
90+
$this->assertSame('HTTP/1.1 200 OK', $info['response_headers'][0]);
91+
$this->assertSame('Host: localhost:8057', $info['response_headers'][1]);
92+
$this->assertSame('http://localhost:8057/', $info['url']);
93+
94+
$headers = $response->getHeaders();
95+
96+
$this->assertSame('localhost:8057', $headers['host'][0]);
97+
$this->assertSame(['application/json'], $headers['content-type']);
98+
99+
$this->assertSame('', $response->getContent());
100+
}
101+
75102
public function testNonBufferedGetRequest()
76103
{
77104
$client = $this->getHttpClient(__FUNCTION__);

0 commit comments

Comments
 (0)