/** * Creates a new request instance * * @param string $queryString * @return scriptlet.Request */ protected function newRequest($queryString = '') { parse_str(ltrim($queryString, '?'), $params); $r = new HttpScriptletRequest(); $r->setParams($params); $r->setURI(new URL(self::BASE_URL . $queryString)); return $r; }
/** * Creates a new request instance * * @param string $queryString * @return webservices.rest.srv.paging.Pagination */ protected function newFixture($queryString = '') { parse_str(ltrim($queryString, '?'), $params); $r = new HttpScriptletRequest(); $r->setParams($params); $r->setURI(new URL('http://example.com/' . $queryString)); return new Pagination($r, new PageParameters('page', 'per_page'), self::SIZE); }
/** * Creates a new request object * * @see xp://scriptlet.HttpScriptlet#_setupRequest * @param string method * @param string url * @param [:string] headers * @return scriptlet.HttpScriptletRequest */ protected function newRequest($method, $url, array $headers) { $u = parse_url($url); isset($u['query']) ? parse_str($u['query'], $params) : ($params = array()); $r = new HttpScriptletRequest(); $r->method = $method; $r->setURI(new URL($u['scheme'] . '://' . $u['host'] . '/' . $u['path'])); $r->setParams($params); $r->setHeaders($headers); return $r; }
public function cannot_route() { $fixture = $this->newFixture(); $req = new HttpScriptletRequest(); $req->setURI(new URL('http://localhost/')); $res = new HttpScriptletResponse(); $fixture->doProcess($req, $res); ob_start(); $res->sendContent(); $sent = ob_get_contents(); ob_end_clean(); $this->assertEquals(404, $res->statusCode); $this->assertEquals('Content-Type: application/json', $res->headers[0]); $this->assertEquals('{"message":"Could not route request to http://localhost/"}', $sent); }