diff --git a/src/Symfony/Component/HttpFoundation/Request.php b/src/Symfony/Component/HttpFoundation/Request.php index 0815b46eae..3d317f0d4b 100644 --- a/src/Symfony/Component/HttpFoundation/Request.php +++ b/src/Symfony/Component/HttpFoundation/Request.php @@ -591,6 +591,16 @@ class Request self::$httpMethodParameterOverride = true; } + /** + * Get the state of httpMethodParameterOverride value. + * + * @return Boolean + */ + public static function getHttpMethodParameterOverride() + { + return self::$httpMethodParameterOverride; + } + /** * Gets a "parameter" value. * diff --git a/src/Symfony/Component/HttpFoundation/Tests/RequestTest.php b/src/Symfony/Component/HttpFoundation/Tests/RequestTest.php index 9f4cb57571..6347df176a 100644 --- a/src/Symfony/Component/HttpFoundation/Tests/RequestTest.php +++ b/src/Symfony/Component/HttpFoundation/Tests/RequestTest.php @@ -677,7 +677,13 @@ class RequestTest extends \PHPUnit_Framework_TestCase $request = new Request(); $request->setMethod('POST'); $request->request->set('_method', 'purge'); + + $this->assertFalse(Request::getHttpMethodParameterOverride(), 'httpMethodParameterOverride should be disabled by default'); + Request::enableHttpMethodParameterOverride(); + + $this->assertTrue(Request::getHttpMethodParameterOverride(), 'httpMethodParameterOverride should be enabled now but it is not'); + $this->assertEquals('PURGE', $request->getMethod(), '->getMethod() returns the method from _method if defined and POST'); $this->disableHttpMethodParameterOverride();