Making more tests no longer skip in test suites.

This commit is contained in:
mark_story 2010-12-16 00:01:43 -05:00
parent 95f58321a8
commit 42754c63ff

View file

@ -22,46 +22,38 @@ App::import('Core', array('CakeRequest', 'CakeResponse'));
App::import('Component', 'Security'); App::import('Component', 'Security');
App::import('Component', 'Cookie'); App::import('Component', 'Cookie');
/** /**
* AppController class * AppController class
* *
* @package cake * @package cake
* @subpackage cake.tests.cases.libs.controller * @subpackage cake.tests.cases.libs.controller
*/ */
if (!class_exists('AppController')) { class ControllerTestAppController extends Controller {
/** /**
* AppController class * helpers property
* *
* @package cake * @var array
* @subpackage cake.tests.cases.libs.controller * @access public
*/ */
class AppController extends Controller { public $helpers = array('Html');
/** /**
* helpers property * uses property
* *
* @var array * @var array
* @access public * @access public
*/ */
public $helpers = array('Html'); public $uses = array('ControllerPost');
/** /**
* uses property * components property
* *
* @var array * @var array
* @access public * @access public
*/ */
public $uses = array('ControllerPost'); public $components = array('Cookie');
/**
* components property
*
* @var array
* @access public
*/
public $components = array('Cookie');
}
} elseif (!defined('APP_CONTROLLER_EXISTS')) {
define('APP_CONTROLLER_EXISTS', true);
} }
/** /**
* ControllerPost class * ControllerPost class
* *
@ -137,7 +129,7 @@ class ControllerPost extends CakeTestModel {
* @package cake * @package cake
* @subpackage cake.tests.cases.libs.controller * @subpackage cake.tests.cases.libs.controller
*/ */
class ControllerCommentsController extends AppController { class ControllerCommentsController extends ControllerTestAppController {
/** /**
* name property * name property
@ -146,6 +138,8 @@ class ControllerCommentsController extends AppController {
* @access public * @access public
*/ */
public $name = 'ControllerComments'; public $name = 'ControllerComments';
protected $_mergeParent = 'ControllerTestAppController';
} }
/** /**
@ -259,7 +253,7 @@ class NameTest extends CakeTestModel {
* @package cake * @package cake
* @subpackage cake.tests.cases.libs.controller * @subpackage cake.tests.cases.libs.controller
*/ */
class TestController extends AppController { class TestController extends ControllerTestAppController {
/** /**
* name property * name property
@ -291,6 +285,8 @@ class TestController extends AppController {
* @access public * @access public
*/ */
public $uses = array('ControllerComment', 'ControllerAlias'); public $uses = array('ControllerComment', 'ControllerAlias');
protected $_mergeParent = 'ControllerTestAppController';
/** /**
* index method * index method
@ -367,7 +363,7 @@ class TestComponent extends Object {
* @package cake * @package cake
* @subpackage cake.tests.cases.libs.controller * @subpackage cake.tests.cases.libs.controller
*/ */
class AnotherTestController extends AppController { class AnotherTestController extends ControllerTestAppController {
/** /**
* name property * name property
@ -382,6 +378,8 @@ class AnotherTestController extends AppController {
* @access public * @access public
*/ */
public $uses = null; public $uses = null;
protected $_mergeParent = 'ControllerTestAppController';
} }
/** /**
@ -870,17 +868,13 @@ class ControllerTest extends CakeTestCase {
* @return void * @return void
*/ */
function testMergeVars() { function testMergeVars() {
if ($this->skipIf(defined('APP_CONTROLLER_EXISTS'), '%s Need a non-existent AppController')) {
return;
}
$request = new CakeRequest('controller_posts/index'); $request = new CakeRequest('controller_posts/index');
$TestController = new TestController($request); $TestController = new TestController($request);
$TestController->constructClasses(); $TestController->constructClasses();
$testVars = get_class_vars('TestController'); $testVars = get_class_vars('TestController');
$appVars = get_class_vars('AppController'); $appVars = get_class_vars('ControllerTestAppController');
$components = is_array($appVars['components']) $components = is_array($appVars['components'])
? array_merge($appVars['components'], $testVars['components']) ? array_merge($appVars['components'], $testVars['components'])
@ -900,12 +894,12 @@ class ControllerTest extends CakeTestCase {
$this->assertEqual(count(array_diff_assoc(Set::normalize($TestController->components), Set::normalize($components))), 0); $this->assertEqual(count(array_diff_assoc(Set::normalize($TestController->components), Set::normalize($components))), 0);
$expected = array('ControllerComment', 'ControllerAlias', 'ControllerPost'); $expected = array('ControllerComment', 'ControllerAlias', 'ControllerPost');
$this->assertEquals($expected, $TestController->uses, '$uses was merged incorrectly, AppController models should be last.'); $this->assertEquals($expected, $TestController->uses, '$uses was merged incorrectly, ControllerTestAppController models should be last.');
$TestController = new AnotherTestController($request); $TestController = new AnotherTestController($request);
$TestController->constructClasses(); $TestController->constructClasses();
$appVars = get_class_vars('AppController'); $appVars = get_class_vars('ControllerTestAppController');
$testVars = get_class_vars('AnotherTestController'); $testVars = get_class_vars('AnotherTestController');
@ -918,7 +912,7 @@ class ControllerTest extends CakeTestCase {
$TestController = new ControllerCommentsController($request); $TestController = new ControllerCommentsController($request);
$TestController->constructClasses(); $TestController->constructClasses();
$appVars = get_class_vars('AppController'); $appVars = get_class_vars('ControllerTestAppController');
$testVars = get_class_vars('ControllerCommentsController'); $testVars = get_class_vars('ControllerCommentsController');
@ -936,9 +930,6 @@ class ControllerTest extends CakeTestCase {
* @return void * @return void
*/ */
function testChildComponentOptionsSupercedeParents() { function testChildComponentOptionsSupercedeParents() {
if ($this->skipIf(defined('APP_CONTROLLER_EXISTS'), '%s Need a non-existent AppController')) {
return;
}
$request = new CakeRequest('controller_posts/index'); $request = new CakeRequest('controller_posts/index');
$TestController = new TestController($request); $TestController = new TestController($request);
@ -951,7 +942,7 @@ class ControllerTest extends CakeTestCase {
/** /**
* Ensure that __mergeVars is not being greedy and merging with * Ensure that __mergeVars is not being greedy and merging with
* AppController when you make an instance of Controller * ControllerTestAppController when you make an instance of Controller
* *
* @return void * @return void
*/ */