2010-05-08 20:23:29 +00:00
|
|
|
<?php
|
2010-05-08 21:22:29 +00:00
|
|
|
/**
|
|
|
|
* A class to contain test cases and run them with shered fixtures
|
|
|
|
*
|
|
|
|
* PHP 5
|
|
|
|
*
|
|
|
|
* CakePHP(tm) : Rapid Development Framework (http://cakephp.org)
|
2011-05-29 21:31:39 +00:00
|
|
|
* Copyright 2005-2011, Cake Software Foundation, Inc. (http://cakefoundation.org)
|
2010-05-08 21:22:29 +00:00
|
|
|
*
|
|
|
|
* Licensed under The MIT License
|
|
|
|
* Redistributions of files must retain the above copyright notice.
|
|
|
|
*
|
2011-05-29 21:31:39 +00:00
|
|
|
* @copyright Copyright 2005-2011, Cake Software Foundation, Inc. (http://cakefoundation.org)
|
2010-05-08 21:22:29 +00:00
|
|
|
* @link http://cakephp.org CakePHP(tm) Project
|
2011-07-26 06:16:14 +00:00
|
|
|
* @package Cake.TestSuite
|
2010-05-08 21:22:29 +00:00
|
|
|
* @since CakePHP(tm) v 2.0
|
|
|
|
* @license MIT License (http://www.opensource.org/licenses/mit-license.php)
|
|
|
|
*/
|
2011-02-12 21:58:10 +00:00
|
|
|
PHP_CodeCoverage_Filter::getInstance()->addFileToBlacklist(__FILE__, 'DEFAULT');
|
2010-05-08 20:23:29 +00:00
|
|
|
|
2011-08-27 14:34:08 +00:00
|
|
|
App::uses('Folder', 'Utility');
|
|
|
|
|
2011-02-12 21:58:10 +00:00
|
|
|
class CakeTestSuite extends PHPUnit_Framework_TestSuite {
|
2010-05-08 20:23:29 +00:00
|
|
|
|
2010-09-25 04:00:08 +00:00
|
|
|
/**
|
|
|
|
* Adds all the files in a directory to the test suite. Does not recurse through directories.
|
|
|
|
*
|
|
|
|
* @param string $directory The directory to add tests from.
|
|
|
|
* @return void
|
|
|
|
*/
|
|
|
|
public function addTestDirectory($directory = '.') {
|
2011-08-27 14:34:08 +00:00
|
|
|
$folder = new Folder($directory);
|
|
|
|
list($dirs, $files) = $folder->read(true, false, true);
|
2010-09-25 04:00:08 +00:00
|
|
|
|
|
|
|
foreach ($files as $file) {
|
|
|
|
$this->addTestFile($file);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2010-09-25 04:16:28 +00:00
|
|
|
/**
|
|
|
|
* Recursively adds all the files in a directory to the test suite.
|
|
|
|
*
|
|
|
|
* @param string $directory The directory subtree to add tests from.
|
|
|
|
* @return void
|
|
|
|
*/
|
|
|
|
public function addTestDirectoryRecursive($directory = '.') {
|
2011-08-27 14:34:08 +00:00
|
|
|
$folder = new Folder($directory);
|
|
|
|
$files = $folder->tree(null, false, 'files');
|
2010-09-25 04:16:28 +00:00
|
|
|
|
|
|
|
foreach ($files as $file) {
|
|
|
|
$this->addTestFile($file);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2011-08-27 14:34:08 +00:00
|
|
|
}
|