private function httpRequestTest(string $request, string $method, string $uri, array $query = array(), string $body = null, array $headers = array(), $version = "0.9") { $message = new HttpMessage(); $this->mapper->mapStreamToMessage(new StringStream($request), $message); $this->assertEquals($version, $message->getHttpVersion()); $this->assertEquals($method, $message->getHttpMethod()); $this->assertEquals($uri, $message->getHttpUri()); foreach ($query as $name => $value) { $this->assertTrue($message->hasQueryHeader($name)); $this->assertEquals($value, $message->getQueryHeader($name)); } foreach ($headers as $name => $header) { $this->assertTrue($message->hasHeader($name)); $this->assertEquals($header, $message->getHeader($name)); } $this->assertEquals($body, $message->getBody()); }