/** * testRequestContentTypes method * * @return void */ public function testRequestContentTypes() { $this->request->env('REQUEST_METHOD', 'GET'); $this->assertNull($this->RequestHandler->requestedWith()); $this->request->env('REQUEST_METHOD', 'POST'); $this->request->env('CONTENT_TYPE', 'application/json'); $this->assertEquals('json', $this->RequestHandler->requestedWith()); $result = $this->RequestHandler->requestedWith(array('json', 'xml')); $this->assertEquals('json', $result); $result = $this->RequestHandler->requestedWith(array('rss', 'atom')); $this->assertFalse($result); $this->request->env('REQUEST_METHOD', 'DELETE'); $this->assertEquals('json', $this->RequestHandler->requestedWith()); $this->request->env('REQUEST_METHOD', 'POST'); $this->request->env('CONTENT_TYPE', ''); $this->request->env('HTTP_CONTENT_TYPE', 'application/json'); $result = $this->RequestHandler->requestedWith(array('json', 'xml')); $this->assertEquals('json', $result); $result = $this->RequestHandler->requestedWith(array('rss', 'atom')); $this->assertFalse($result); $this->request->env('HTTP_ACCEPT', 'text/xml,application/xml,application/xhtml+xml,text/html,text/plain,image/png,*/*'); $this->assertTrue($this->RequestHandler->isXml()); $this->assertFalse($this->RequestHandler->isAtom()); $this->assertFalse($this->RequestHandler->isRSS()); $this->request->env('HTTP_ACCEPT', 'application/atom+xml,text/xml,application/xml,application/xhtml+xml,text/html,text/plain,image/png,*/*'); $this->assertTrue($this->RequestHandler->isAtom()); $this->assertFalse($this->RequestHandler->isRSS()); $this->request->env('HTTP_ACCEPT', 'application/rss+xml,text/xml,application/xml,application/xhtml+xml,text/html,text/plain,image/png,*/*'); $this->assertFalse($this->RequestHandler->isAtom()); $this->assertTrue($this->RequestHandler->isRSS()); $this->assertFalse($this->RequestHandler->isWap()); $this->request->env('HTTP_ACCEPT', 'text/vnd.wap.wml,text/html,text/plain,image/png,*/*'); $this->assertTrue($this->RequestHandler->isWap()); }