get('/'); $locations = $this->_response->getHeader('Location'); $this->assertRegExp('%.*/account/$%', $locations[0]); $this->get('/'); $locations = $this->_response->getHeader('Location'); $this->assertRegExp('%.*/account/$%', $locations[0]); } /** * testDisplay method * * @return void */ public function testDisplay() { $this->get('/pages/home'); $this->assertResponseOk(); $this->assertResponseContains('CakePHP'); $this->assertResponseContains(''); } /** * Test that missing template renders 404 page in production * * @return void */ public function testMissingTemplate() { Configure::write('debug', false); $this->get('/pages/not_existing'); $this->assertResponseError(); $this->assertResponseContains('Not Found'); } /** * Test that missing template in debug mode renders missing_template error page * * @return void */ public function testMissingTemplateInDebug() { Configure::write('debug', true); $this->get('/pages/not_existing'); $this->assertResponseFailure(); $this->assertResponseContains('Template file \u0022Pages\/not_existing.ctp\u0022 is missing.'); $this->assertResponseContains('not_existing.ctp'); } /** * Test directory traversal protection * * @return void */ public function testDirectoryTraversalProtection() { $this->get('/pages/../Layout/ajax'); $this->assertResponseCode(403); $this->assertResponseContains('Forbidden'); } }