public function testDecoratorProxiesToAllMethods()
 {
     $stream = $this->getMockBuilder('Psr\\Http\\Message\\StreamInterface')->getMock();
     $psrRequest = new PsrRequest([], [], 'http://example.com', 'POST', $stream, ['Accept' => 'application/xml', 'X-URL' => 'http://example.com/foo']);
     $request = new Request($psrRequest);
     $this->assertEquals('1.1', $request->getProtocolVersion());
     $this->assertSame($stream, $request->getBody());
     $this->assertSame($psrRequest->getHeaders(), $request->getHeaders());
     $this->assertEquals($psrRequest->getRequestTarget(), $request->getRequestTarget());
 }
 /**
  * Create
  *
  * @return Request Request
  */
 public static function fromRequest(ServerRequest $request)
 {
     return new HttpMessages_CraftRequest($request->getServerParams(), $request->getUploadedFiles(), $request->getUri(), $request->getMethod(), $request->getBody(), $request->getHeaders(), $request->getCookieParams(), $request->getQueryParams(), $request->getParsedBody(), $request->getProtocolVersion());
 }