/**
  * 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();
 }
Exemple #2
0
 /**
  * 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();
 }
Exemple #3
0
 /**
  * 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();
 }