/** * testRender method * * @return void */ public function testRender() { App::build(array('View' => array(CAKE . 'Test' . DS . 'test_app' . DS . 'View' . DS)), App::RESET); ClassRegistry::flush(); $request = new CakeRequest('controller_posts/index'); $request->params['action'] = 'index'; $Controller = new Controller($request, new CakeResponse()); $Controller->viewPath = 'Posts'; $result = $Controller->render('index'); $this->assertRegExp('/posts index/', (string) $result); $Controller->view = 'index'; $result = $Controller->render(); $this->assertRegExp('/posts index/', (string) $result); $result = $Controller->render('/Elements/test_element'); $this->assertRegExp('/this is the test element/', (string) $result); $Controller->view = null; $Controller = new TestController($request, new CakeResponse()); $Controller->uses = array('ControllerAlias', 'TestPlugin.ControllerComment', 'ControllerPost'); $Controller->helpers = array('Html'); $Controller->constructClasses(); $Controller->ControllerComment->validationErrors = array('title' => 'tooShort'); $expected = $Controller->ControllerComment->validationErrors; $Controller->viewPath = 'Posts'; $result = $Controller->render('index'); $View = $Controller->View; $this->assertTrue(isset($View->validationErrors['ControllerComment'])); $this->assertEquals($expected, $View->validationErrors['ControllerComment']); $expectedModels = array('ControllerAlias' => array('plugin' => null, 'className' => 'ControllerAlias'), 'ControllerComment' => array('plugin' => 'TestPlugin', 'className' => 'ControllerComment'), 'ControllerPost' => array('plugin' => null, 'className' => 'ControllerPost')); $this->assertEquals($expectedModels, $Controller->request->params['models']); ClassRegistry::flush(); App::build(); }
/** * testRender method * * @access public * @return void */ function testRender() { Configure::write('viewPaths', array(TEST_CAKE_CORE_INCLUDE_PATH . 'tests' . DS . 'test_app' . DS . 'views' . DS, TEST_CAKE_CORE_INCLUDE_PATH . 'libs' . DS . 'view' . DS)); $Controller =& new Controller(); $Controller->viewPath = 'posts'; $result = $Controller->render('index'); $this->assertPattern('/posts index/', $result); $result = $Controller->render('/elements/test_element'); $this->assertPattern('/this is the test element/', $result); $Controller = new TestController(); $Controller->constructClasses(); $Controller->ControllerComment->validationErrors = array('title' => 'tooShort'); $expected = $Controller->ControllerComment->validationErrors; ClassRegistry::flush(); $Controller->viewPath = 'posts'; $result = $Controller->render('index'); $View = ClassRegistry::getObject('view'); $this->assertTrue(isset($View->validationErrors['ControllerComment'])); $this->assertEqual($expected, $View->validationErrors['ControllerComment']); $Controller->ControllerComment->validationErrors = array(); ClassRegistry::flush(); }
/** * testRender method * * @access public * @return void */ function testRender() { App::build(array('views' => array(TEST_CAKE_CORE_INCLUDE_PATH . 'tests' . DS . 'test_app' . DS . 'views' . DS)), true); $request = new CakeRequest('controller_posts/index'); $request->params['action'] = 'index'; $Controller = new Controller($request, $this->getMock('CakeResponse')); $Controller->viewPath = 'posts'; $result = $Controller->render('index'); $this->assertPattern('/posts index/', $result); $Controller->view = 'index'; $result = $Controller->render(); $this->assertPattern('/posts index/', $result); $result = $Controller->render('/elements/test_element'); $this->assertPattern('/this is the test element/', $result); $Controller->view = null; $Controller = new TestController($request); $Controller->helpers = array('Html'); $Controller->constructClasses(); $Controller->ControllerComment->validationErrors = array('title' => 'tooShort'); $expected = $Controller->ControllerComment->validationErrors; ClassRegistry::flush(); $Controller->viewPath = 'posts'; $result = $Controller->render('index'); $View = $Controller->View; $this->assertTrue(isset($View->validationErrors['ControllerComment'])); $this->assertEqual($expected, $View->validationErrors['ControllerComment']); $Controller->ControllerComment->validationErrors = array(); ClassRegistry::flush(); App::build(); }