public function testRequestCreateEqualsRequestSetState() { $value = sha1((string) mt_rand()); $requestState = new RequestState(); $requestStateReflection = new ReflectionObject($requestState); $requestStateProperties = $requestStateReflection->getProperties(ReflectionProperty::IS_PUBLIC); foreach ($requestStateProperties as $requestStateProperty) { $requestStateProperty->setValue($requestState, $value); } $request1 = Request::__set_state($requestState->exportState()); $request2 = Request::create($requestState->exportState()); $this->assertEquals($request1, $request2); }
<?php require_once __DIR__ . '/../vendor/autoload.php'; use sekjun9878\RequestParser\RequestParser; use sekjun9878\RequestParser\Request; $header_str = "GET /democracy/init HTTP/1.1\r\nUser-Agent: The Illuminati/2.0\r\nContent-Length: 10\r\n\r\nOver 9000!"; $requestParser = new RequestParser(); $requestParser->addData($header_str); $request = Request::create($requestParser->exportRequestState()); var_dump($request->getHeaders()); var_dump($request->getBody());