|
|
@@ -1158,6 +1158,42 @@ class CakeRequestTest extends CakeTestCase {
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
+ * Test parsing accept ignores index param
|
|
|
+ *
|
|
|
+ * @return void
|
|
|
+ */
|
|
|
+ public function testParseAcceptIgnoreAcceptExtensions() {
|
|
|
+ $_SERVER['HTTP_ACCEPT'] = 'application/json;level=1, text/plain, */*';
|
|
|
+
|
|
|
+ $request = new CakeRequest('/', false);
|
|
|
+ $result = $request->parseAccept();
|
|
|
+ $expected = array(
|
|
|
+ '1.0' => array('application/json', 'text/plain', '*/*'),
|
|
|
+ );
|
|
|
+ $this->assertEquals($expected, $result);
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+/**
|
|
|
+ * Test that parsing accept headers with invalid syntax works.
|
|
|
+ *
|
|
|
+ * The header used is missing a q value for application/xml.
|
|
|
+ *
|
|
|
+ * @return void
|
|
|
+ */
|
|
|
+ public function testParseAcceptInvalidSyntax() {
|
|
|
+ $_SERVER['HTTP_ACCEPT'] = 'text/html,application/xhtml+xml,application/xml;image/png,image/jpeg,image/*;q=0.9,*/*;q=0.8';
|
|
|
+ $request = new CakeRequest('/', false);
|
|
|
+ $result = $request->parseAccept();
|
|
|
+ $expected = array(
|
|
|
+ '1.0' => array('text/html', 'application/xhtml+xml', 'application/xml', 'image/jpeg'),
|
|
|
+ '0.9' => array('image/*'),
|
|
|
+ '0.8' => array('*/*'),
|
|
|
+ );
|
|
|
+ $this->assertEquals($expected, $result);
|
|
|
+ }
|
|
|
+
|
|
|
+/**
|
|
|
* Test baseUrl and webroot with ModRewrite
|
|
|
*
|
|
|
* @return void
|