diff --git a/dev/TestRunner.php b/dev/TestRunner.php index a7d89942c..814c9cffb 100644 --- a/dev/TestRunner.php +++ b/dev/TestRunner.php @@ -89,7 +89,7 @@ class TestRunner extends Controller { if (!self::$default_reporter) self::set_reporter(Director::is_cli() ? 'CliDebugView' : 'DebugView'); if(!PhpUnitWrapper::has_php_unit()) { - die("Please install PHPUnit using pear"); + die("Please install PHPUnit 3.5.0 or newer using pear\n"); } } diff --git a/dev/phpunit/PhpUnitWrapper.php b/dev/phpunit/PhpUnitWrapper.php index 7c98107a1..6a53d47d4 100644 --- a/dev/phpunit/PhpUnitWrapper.php +++ b/dev/phpunit/PhpUnitWrapper.php @@ -22,7 +22,7 @@ function fileExistsInIncludePath($filename) { /** * PHPUnit Wrapper class. * Base class for PHPUnit wrapper classes to support different PHPUnit versions. - * The current implementation supports PHPUnit 3.4 and PHPUnit 3.5. + * The current implementation supports PHPUnit 3.5. */ class PhpUnitWrapper implements IPhpUnitWrapper { @@ -48,13 +48,6 @@ class PhpUnitWrapper implements IPhpUnitWrapper { * @var PHPUnit_Framework_TestListener */ private $reporter = null; - - /** - * Shows the version, implemented by the phpunit-wrapper class instance. - * This instance implements no phpunit, the version is null. - * @var String - */ - protected $version = null; private static $phpunit_wrapper = null; @@ -123,11 +116,10 @@ class PhpUnitWrapper implements IPhpUnitWrapper { } /** - * Getter for $version (@see $version). * @return String */ public function getVersion() { - return $this->version; + return (method_exists('PHPUnit_Runner_Version', 'id')) ? PHPUnit_Runner_Version::id() : null; } /** @@ -140,25 +132,21 @@ class PhpUnitWrapper implements IPhpUnitWrapper { if (self::$phpunit_wrapper == null) { if (fileExistsInIncludePath("/PHPUnit/Autoload.php")) { self::$phpunit_wrapper = new PhpUnitWrapper_3_5(); - } else - if (fileExistsInIncludePath("/PHPUnit/Framework.php")) { - self::$phpunit_wrapper = new PhpUnitWrapper_3_4(); } else { - self::$phpunit_wrapper = new PhpUnitWrapper(); + self::$phpunit_wrapper = new PhpUnitWrapper(); } self::$phpunit_wrapper->init(); - } + return self::$phpunit_wrapper; } /** - * Returns true if one of the two supported PHPUNIT versions is installed. - * * @return boolean true if PHPUnit has been installed on the environment. */ static function has_php_unit() { - return (Bool) self::inst()->getVersion(); + $version = self::inst()->getVersion(); + return ($version && version_compare($version, '3.5.0', '>=')); } /** diff --git a/dev/phpunit/PhpUnitWrapper_3_4.php b/dev/phpunit/PhpUnitWrapper_3_4.php deleted file mode 100644 index 476fd0fbd..000000000 --- a/dev/phpunit/PhpUnitWrapper_3_4.php +++ /dev/null @@ -1,63 +0,0 @@ -getCoverageStatus()) { - // blacklist selected folders from coverage report - foreach(TestRunner::$coverage_filter_dirs as $dir) { - PHPUnit_Util_Filter::addDirectoryToFilter(BASE_PATH . '/' . $dir); - } - $this->getFrameworkTestResults()->collectCodeCoverageInformation(true); - } - } - - /** - * Overwrites aferRunTests. Creates coverage report and clover report - * if required. - */ - protected function aferRunTests() { - - if($this->getCoverageStatus()) { - - if(!file_exists(ASSETS_PATH . '/coverage-report')) { - mkdir(ASSETS_PATH . '/coverage-report'); - } - - $ret = PHPUnit_Util_Report::render($this->getFrameworkTestResults(), ASSETS_PATH . '/coverage-report/'); - - $coverageApp = ASSETS_PATH . '/coverage-report/' . preg_replace('/[^A-Za-z0-9]/','_',preg_replace('/(\/$)|(^\/)/','',Director::baseFolder())) . '.html'; - $coverageTemplates = ASSETS_PATH . '/coverage-report/' . preg_replace('/[^A-Za-z0-9]/','_',preg_replace('/(\/$)|(^\/)/','',realpath(TEMP_FOLDER))) . '.html'; - - echo "

Coverage reports available here:

"; - } - } - -} \ No newline at end of file diff --git a/dev/phpunit/PhpUnitWrapper_3_5.php b/dev/phpunit/PhpUnitWrapper_3_5.php index 67637df47..3e518bc4f 100644 --- a/dev/phpunit/PhpUnitWrapper_3_5.php +++ b/dev/phpunit/PhpUnitWrapper_3_5.php @@ -6,8 +6,6 @@ class PhpUnitWrapper_3_5 extends PhpUnitWrapper { - protected $version = 'PhpUnit V3.5'; - protected $coverage = null; protected static $test_name = 'SapphireTest';