public function testHttpMethodOverrides() { $request = new HTTPRequest('GET', 'admin/crm'); $this->assertTrue($request->isGET(), 'GET with no method override'); $request = new HTTPRequest('POST', 'admin/crm'); $this->assertTrue($request->isPOST(), 'POST with no method override'); $request = new HTTPRequest('GET', 'admin/crm', array('_method' => 'DELETE')); $this->assertTrue($request->isGET(), 'GET with invalid POST method override'); $request = new HTTPRequest('POST', 'admin/crm', array(), array('_method' => 'DELETE')); $this->assertTrue($request->isDELETE(), 'POST with valid method override to DELETE'); $request = new HTTPRequest('POST', 'admin/crm', array(), array('_method' => 'put')); $this->assertTrue($request->isPUT(), 'POST with valid method override to PUT'); $request = new HTTPRequest('POST', 'admin/crm', array(), array('_method' => 'head')); $this->assertTrue($request->isHEAD(), 'POST with valid method override to HEAD '); $request = new HTTPRequest('POST', 'admin/crm', array(), array('_method' => 'head')); $this->assertTrue($request->isHEAD(), 'POST with valid method override to HEAD'); $request = new HTTPRequest('POST', 'admin/crm', array('_method' => 'head')); $this->assertTrue($request->isPOST(), 'POST with invalid method override by GET parameters to HEAD'); }