public function postRequestShouldSendAPostRequest()
{
$requestData = new RequestData('POST', 'http://www.example.com');
$request = new Request($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 post data"));
$factory = $this->createCallableMock();
$factory->expects($this->once())->method('__invoke')->will($this->returnValue($this->response));
$request->setResponseFactory($factory);
$request->end('some post data');
$request->handleData("HTTP/1.0 200 OK\r\n");
$request->handleData("Content-Type: text/plain\r\n");
$request->handleData("\r\nbody");
}