public function testAddsContentLengthWhenMissingAndPossible() { $h = new MockHandler([function (RequestInterface $request) { $this->assertEquals(3, $request->getHeaderLine('Content-Length')); return new Response(200); }]); $m = Middleware::prepareBody(); $stack = new HandlerStack($h); $stack->push($m); $comp = $stack->resolve(); $p = $comp(new Request('PUT', 'http://www.google.com', [], '123'), []); $this->assertInstanceOf(PromiseInterface::class, $p); $response = $p->wait(); $this->assertEquals(200, $response->getStatusCode()); }