/** @test */
public function writeWithAPostRequestShouldSendToTheStream()
{
$requestData = new RequestData('POST', 'http://www.example.com');
$request = new Request($this->loop, $this->connector, $requestData);
$this->successfulConnectionMock();
$this->stream->expects($this->at(4))->method('write')->with($this->matchesRegularExpression("#^POST / HTTP/1\\.0\r\nHost: www.example.com\r\nUser-Agent:.*\r\n\r\n\$#"));
$this->stream->expects($this->at(5))->method('write')->with($this->identicalTo("some"));
$this->stream->expects($this->at(6))->method('write')->with($this->identicalTo("post"));
$this->stream->expects($this->at(7))->method('write')->with($this->identicalTo("data"));
$factory = $this->createCallableMock();
$factory->expects($this->once())->method('__invoke')->will($this->returnValue($this->response));
$request->setResponseFactory($factory);
$request->write("some");
$request->write("post");
$request->end("data");
$request->handleData("HTTP/1.0 200 OK\r\n");
$request->handleData("Content-Type: text/plain\r\n");
$request->handleData("\r\nbody");
}