public function testParsingAcceptHeader()
{
$chrome = array('application/xml', 'application/xhtml+xml', 'text/html;q=0.9', 'text/plain;q=0.8', 'image/png', '*/*;q=0.5');
$firefox = array('text/html', 'application/xhtml+xml', 'application/xml;q=0.9', '*/*;q=0.8');
$safari = array('application/xml', 'application/xhtml+xml', 'text/html;q=0.9', 'text/plain;q=0.8', 'image/png', '*/*;q=0.5');
$opera = array('text/html', 'application/xml;q=0.9', 'application/xhtml+xml', 'image/png', 'image/jpeg', 'image/gif', 'image/x-xbitmap', '*/*;q=0.1');
$android = array('application/xml', 'application/xhtml+xml', 'text/html;q=0.9', 'text/plain;q=0.8', 'image/png', '*/*;q=0.5', 'application/youtube-client');
$request = new Request(array('env' => array('HTTP_ACCEPT' => join(',', $chrome))));
$this->assertEqual('html', $request->accepts());
$this->assertNotEmpty(array_search('text/plain', $request->accepts(true)), 4);
$request = new Request(array('env' => array('HTTP_ACCEPT' => join(',', $safari))));
$this->assertEqual('html', $request->accepts());
$request = new Request(array('env' => array('HTTP_ACCEPT' => join(',', $firefox))));
$this->assertEqual('html', $request->accepts());
$request = new Request(array('env' => array('HTTP_ACCEPT' => join(',', $opera))));
$this->assertEqual('html', $request->accepts());
$request = new Request(array('env' => array('HTTP_ACCEPT' => join(',', $chrome))));
$request->params['type'] = 'txt';
$result = $request->accepts(true);
$this->assertEqual('text/plain', $result[0]);
$request = new Request(array('env' => array('HTTP_ACCEPT' => join(',', $android))));
$this->assertEqual('html', $request->accepts());
}