Skip to content

Commit a05339f

Browse files
committed
Always set content length header to avoid bad request
1 parent 49fd457 commit a05339f

File tree

1 file changed

+27
-4
lines changed

1 file changed

+27
-4
lines changed

src/HttpAdapterTest.php

Lines changed: 27 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,7 @@ abstract class HttpAdapterTest extends \PHPUnit_Framework_TestCase
5757
protected $defaultHeaders = [
5858
'Connection' => 'close',
5959
'User-Agent' => 'PHP HTTP Adapter',
60+
'Content-Length' => '0'
6061
];
6162

6263
/**
@@ -105,6 +106,10 @@ abstract protected function createHttpAdapter();
105106
*/
106107
public function testSendRequest($method, $uri, array $headers, $body)
107108
{
109+
if ($body != null) {
110+
$headers['Content-Length'] = (string)strlen($body);
111+
}
112+
108113
$request = self::$messageFactory->createRequest(
109114
$method,
110115
$uri,
@@ -134,6 +139,10 @@ public function testSendRequestWithOutcome($uriAndOutcome, $protocolVersion, arr
134139
$body = null;
135140
}
136141

142+
if ($body != null) {
143+
$headers['Content-Length'] = (string)strlen($body);
144+
}
145+
137146
$request = self::$messageFactory->createRequest(
138147
$method = 'GET',
139148
$uriAndOutcome[0],
@@ -239,12 +248,19 @@ public function requestsProvider()
239248
$messageFactory = MessageFactoryDiscovery::find();
240249

241250
foreach ($requests as &$request) {
251+
$headers = $request[2];
252+
$body = $request[3];
253+
254+
if ($body !== null) {
255+
$headers['Content-Length'] = strlen($body);
256+
}
257+
242258
$request = $messageFactory->createRequest(
243259
$request[0],
244260
$request[1],
245261
'1.1',
246-
$request[2],
247-
$request[3]
262+
$headers,
263+
$body
248264
);
249265
}
250266

@@ -270,12 +286,19 @@ public function erroredRequestsProvider()
270286
$cartesianProduct = new CartesianProduct($sets);
271287

272288
foreach ($cartesianProduct as $request) {
289+
$headers = $request[2];
290+
$body = $request[3];
291+
292+
if ($body !== null) {
293+
$headers['Content-Length'] = strlen($body);
294+
}
295+
273296
$requests[] = $messageFactory->createRequest(
274297
$request[0],
275298
$request[1],
276299
'1.1',
277-
$request[2],
278-
$request[3]
300+
$headers,
301+
$body
279302
);
280303
}
281304

0 commit comments

Comments
 (0)