# PHPUnit uses stream_resolve_include_path() internally
# See bug 32022
set_include_path(
- dirname( __FILE__ )
+ __DIR__
.PATH_SEPARATOR
. get_include_path()
);
}
}
- protected function handleCustomTestSuite() {
- if ( empty( $this->arguments['printer'] ) ) {
- $this->arguments['printer'] = new PHPUnit_TextUI_ResultPrinter(
- null,
- isset($this->arguments['verbose']) ? $this->arguments['verbose'] : false,
- isset($this->arguments['colors']) ? $this->arguments['colors'] : true,
- isset($this->arguments['debug']) ? $this->arguments['debug'] : false
- );
- }
+ public function run( array $argv, $exit = true ) {
+ $ret = parent::run( $argv, false );
+
+ // Return to real wiki db, so profiling data is preserved
+ MediaWikiTestCase::teardownTestDB();
+
+ // Log profiling data, e.g. in the database or UDP
+ wfLogProfilingData();
- parent::handleCustomTestSuite();
+ if ( $exit ) {
+ exit( $ret );
+ } else {
+ return $ret;
+ }
}
public function showHelp() {
}
}
-
-class MediaWikiPHPUnitResultPrinter extends PHPUnit_TextUI_ResultPrinter {
- /**
- * Overrides original method to ignore incomplete tests except in verbose mode.
- *
- * @param PHPUnit_Framework_TestResult $result
- */
- protected function printIncompletes(PHPUnit_Framework_TestResult $result)
- {
- if ( $this->verbose ) {
- parent::printIncompletes( $result );
- }
- }
-
- /**
- * Overrides original method to ignore skipped tests except in verbose mode.
- *
- * @param PHPUnit_Framework_TestResult $result
- */
- protected function printSkipped(PHPUnit_Framework_TestResult $result)
- {
- if ( $this->verbose ) {
- parent::printSkipped( $result );
- }
- }
-
-}