Changeset 1782b02
- Timestamp:
- 10/31/11 10:43:29 (7 months ago)
- Branches:
- master
- Children:
- 1576bb0
- Parents:
- e551855
- git-author:
- Michiel Rook <mrook@…> (10/31/11 10:43:29)
- git-committer:
- Michiel Rook <mrook@…> (10/31/11 10:43:29)
- Files:
-
- 6 edited
-
build/BuildPhingPEARPackageTask.php (modified) (1 diff)
-
classes/phing/tasks/ext/coverage/CoverageMerger.php (modified) (3 diffs)
-
classes/phing/tasks/ext/coverage/CoverageSetupTask.php (modified) (1 diff)
-
classes/phing/tasks/ext/phpunit/PHPUnitTask.php (modified) (5 diffs)
-
classes/phing/tasks/ext/phpunit/PHPUnitTestRunner.php (modified) (6 diffs)
-
classes/phing/tasks/ext/phpunit/formatter/CloverPHPUnitResultFormatter.php (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
build/BuildPhingPEARPackageTask.php
re551855 r1782b02 198 198 $package->addPackageDepWithChannel( 'optional', 'VersionControl_SVN', 'pear.php.net', '0.3.4'); 199 199 $package->addPackageDepWithChannel( 'optional', 'VersionControl_Git', 'pear.php.net', '0.4.3'); 200 $package->addPackageDepWithChannel( 'optional', 'PHPUnit', 'pear.phpunit.de', '3.4.0'); 200 $package->addPackageDepWithChannel( 'optional', 'PHPUnit', 'pear.phpunit.de', '3.6.0'); 201 $package->addPackageDepWithChannel( 'optional', 'PHP_CodeCoverage', 'pear.phpunit.de', '1.1.0'); 201 202 $package->addPackageDepWithChannel( 'optional', 'PhpDocumentor', 'pear.php.net', '1.4.0'); 202 203 $package->addPackageDepWithChannel( 'optional', 'Xdebug', 'pecl.php.net', '2.0.5'); -
classes/phing/tasks/ext/coverage/CoverageMerger.php
r809b104 r1782b02 39 39 reset($right); 40 40 41 while (current($left) && current($right)) {41 while (current($left) !== false && current($right) !== false) { 42 42 $linenr_left = key($left); 43 43 $linenr_right = key($right); … … 61 61 } 62 62 63 while (current($left) ) {63 while (current($left) !== false) { 64 64 $coverageMerged[key($left)] = current($left); 65 65 next($left); 66 66 } 67 67 68 while (current($right) ) {68 while (current($right) !== false) { 69 69 $coverageMerged[key($right)] = current($right); 70 70 next($right); … … 90 90 91 91 foreach ($coverageTotal as $filename => $data) { 92 if (version_compare(PHPUnit_Runner_Version::id(), '3.5.0') >=0) { 93 $ignoreLines = PHP_CodeCoverage_Util::getLinesToBeIgnored($filename); 94 } else { 95 // FIXME retrieve ignored lines for PHPUnit Version < 3.5.0 96 $ignoreLines = array(); 97 } 92 $ignoreLines = PHP_CodeCoverage_Util::getLinesToBeIgnored($filename); 98 93 99 94 $lines = array(); -
classes/phing/tasks/ext/coverage/CoverageSetupTask.php
r48fd4f8 r1782b02 167 167 168 168 if ($newFilter) { 169 PHP_CodeCoverage_Filter::getInstance()->addFileToWhiteList($file['fullname']);169 //PHP_CodeCoverage_Filter::getInstance()->addFileToWhiteList($file['fullname']); 170 170 } else { 171 171 PHPUnit_Util_Filter::addFileToWhitelist($file['fullname']); -
classes/phing/tasks/ext/phpunit/PHPUnitTask.php
r2bfce10 r1782b02 50 50 private $testfailed = false; 51 51 private $testfailuremessage = ""; 52 private $codecoverage = false;52 private $codecoverage = null; 53 53 private $groups = array(); 54 54 private $excludeGroups = array(); … … 63 63 */ 64 64 public function init() { 65 if (version_compare(PHP_VERSION, '5.0.3') < 0)66 {67 throw new BuildException("PHPUnitTask requires PHP version >= 5.0.3", $this->getLocation());68 }69 70 65 /** 71 66 * Determine PHPUnit version number … … 79 74 $version = PHPUnit_Runner_Version::id(); 80 75 81 if (version_compare($version, '3. 2.0') < 0)82 { 83 throw new BuildException("PHPUnitTask requires PHPUnit version >= 3. 2.0", $this->getLocation());76 if (version_compare($version, '3.6.0') < 0) 77 { 78 throw new BuildException("PHPUnitTask requires PHPUnit version >= 3.6.0", $this->getLocation()); 84 79 } 85 80 … … 98 93 define('PHPUnit_MAIN_METHOD', 'PHPUnitTask::undefined'); 99 94 } 100 101 /**102 * Add some defaults to the PHPUnit filter103 */104 $pwd = dirname(__FILE__);105 $path = realpath($pwd . '/../../../');106 107 if (version_compare($version, '3.5.0') >= 0) {108 PHP_CodeCoverage_Filter::getInstance()->addDirectoryToBlacklist($path);109 } else {110 require_once 'PHPUnit/Framework.php';111 require_once 'PHPUnit/Util/Filter.php';112 113 PHPUnit_Util_Filter::addDirectoryToFilter($path);114 }115 95 } 116 96 … … 315 295 $runner = new PHPUnitTestRunner($this->project, $this->groups, $this->excludeGroups, $this->processIsolation); 316 296 317 $runner->setCodecoverage($this->codecoverage); 297 if ($this->codecoverage) { 298 /** 299 * Add some defaults to the PHPUnit filter 300 */ 301 $pwd = dirname(__FILE__); 302 $path = realpath($pwd . '/../../../'); 303 304 $filter = new PHP_CodeCoverage_Filter(); 305 $filter->addDirectoryToBlacklist($path); 306 $runner->setCodecoverage(new PHP_CodeCoverage(null, $filter)); 307 } 308 318 309 $runner->setUseCustomErrorHandler($this->usecustomerrorhandler); 319 310 -
classes/phing/tasks/ext/phpunit/PHPUnitTestRunner.php
r30bee6b r1782b02 20 20 */ 21 21 22 // phpunit 3.5 ships with autoloader 23 // @todo - find out sane model for Phing and PHPUnit autoloaders/hooks co-existense 24 if (version_compare(PHPUnit_Runner_Version::id(), '3.5.0') >=0) { 25 require_once 'PHPUnit/Autoload.php'; 26 } 27 require_once 'PHPUnit/Util/ErrorHandler.php'; 28 require_once 'PHPUnit/Util/Filter.php'; 29 require_once 'PHPUnit/Runner/BaseTestRunner.php'; 30 require_once 'PHPUnit/Framework/TestListener.php'; 22 require_once 'PHPUnit/Autoload.php'; 31 23 require_once 'phing/tasks/ext/coverage/CoverageMerger.php'; 32 24 require_once 'phing/system/util/Timer.php'; … … 55 47 private $formatters = array(); 56 48 57 private $codecoverage = false;49 private $codecoverage = null; 58 50 59 51 private $project = NULL; … … 90 82 } 91 83 92 public staticfunction handleError($level, $message, $file, $line)84 public function handleError($level, $message, $file, $line) 93 85 { 94 86 $isFiltered = false; 95 if (version_compare(PHPUnit_Runner_Version::id(), '3.5.0') >=0) { 96 $isFiltered = PHP_CodeCoverage::getInstance()->filter()->isFiltered( 87 88 if ($this->codecoverage) { 89 $isFiltered = $this->codecoverage->filter()->isFiltered( 97 90 $file, array(), true 98 91 ); 99 } else { 100 $isFiltered = PHPUnit_Util_Filter::isFiltered($file, true, true); 101 } 92 } 93 102 94 if (!$isFiltered) { 103 95 return PHPUnit_Util_ErrorHandler::handleError($level, $message, $file, $line); … … 114 106 if ($this->codecoverage) 115 107 { 116 $res-> collectCodeCoverageInformation(TRUE);108 $res->setCodeCoverage($this->codecoverage); 117 109 } 118 110 … … 127 119 if ($this->useCustomErrorHandler) 128 120 { 129 $oldErrorHandler = set_error_handler(array( 'PHPUnitTestRunner', 'handleError'), E_ALL | E_STRICT);121 $oldErrorHandler = set_error_handler(array($this, 'handleError'), E_ALL | E_STRICT); 130 122 } 131 123 … … 145 137 if ($this->codecoverage) 146 138 { 147 if (version_compare(PHPUnit_Runner_Version::id(), '3.5.0') >=0) { 148 $coverage = $res->getCodeCoverage(); 149 150 $summary = $coverage->getSummary(); 151 } else { 152 $coverageInformation = $res->getCodeCoverageInformation(); 153 PHPUnit_Util_CodeCoverage::clearSummary(); 154 $summary = PHPUnit_Util_CodeCoverage::getSummary($coverageInformation); 155 } 156 157 CoverageMerger::merge($this->project, $summary); 139 CoverageMerger::merge($this->project, $this->codecoverage->getData()); 158 140 } 159 141 -
classes/phing/tasks/ext/phpunit/formatter/CloverPHPUnitResultFormatter.php
red3ff78 r1782b02 67 67 public function endTestRun() 68 68 { 69 if (version_compare($this->version, '3.5.0') >=0) { 70 require_once 'PHP/CodeCoverage/Report/Clover.php'; 71 72 $coverage = $this->result->getCodeCoverage(); 73 74 $clover = new PHP_CodeCoverage_Report_Clover(); 75 76 $contents = $clover->process($coverage); 77 } else { 78 require_once 'PHPUnit/Util/Log/CodeCoverage/XML/Clover.php'; 79 80 $clover = new PHPUnit_Util_Log_CodeCoverage_XML_Clover(null); 81 82 ob_start(); 83 84 $clover->process($this->result); 85 $contents = ob_get_contents(); 86 87 ob_end_clean(); 88 } 69 require_once 'PHP/CodeCoverage/Report/Clover.php'; 70 71 $coverage = $this->result->getCodeCoverage(); 72 73 $clover = new PHP_CodeCoverage_Report_Clover(); 74 75 $contents = $clover->process($coverage); 89 76 90 77 if ($this->out)
Note: See TracChangeset
for help on using the changeset viewer.
