Merge "Title: Test the ->equals() method more thoughroughly"
[lhc/web/wiklou.git] / tests / phpunit / MediaWikiPHPUnitTestListener.php
index 7237ef3..6f982ad 100644 (file)
@@ -1,19 +1,16 @@
 <?php
-class MediaWikiPHPUnitTestListener implements PHPUnit_Framework_TestListener {
+
+class MediaWikiPHPUnitTestListener extends PHPUnit_Framework_BaseTestListener {
 
        /**
         * @var string
         */
-       protected $logChannel;
-
-       public function __construct( $logChannel ) {
-               $this->logChannel = $logChannel;
-       }
+       protected $logChannel = 'PHPUnitCommand';
 
        protected function getTestName( PHPUnit_Framework_Test $test ) {
                $name = get_class( $test );
 
-               if ( $test instanceof PHPUnit_Framework_TestCase ) {
+               if ( $test instanceof PHPUnit\Framework\TestCase ) {
                        $name .= '::' . $test->getName( true );
                }
 
@@ -30,54 +27,65 @@ class MediaWikiPHPUnitTestListener implements PHPUnit_Framework_TestListener {
        /**
         * An error occurred.
         *
-        * @param  PHPUnit_Framework_Test $test
-        * @param  Exception              $e
-        * @param  float                  $time
+        * @param PHPUnit_Framework_Test $test
+        * @param Exception $e
+        * @param float $time
         */
        public function addError( PHPUnit_Framework_Test $test, Exception $e, $time ) {
-               wfDebugLog( $this->logChannel, 'ERROR in ' . $this->getTestName( $test ) . ': ' . $this->getErrorName( $e ) );
+               wfDebugLog(
+                       $this->logChannel,
+                       'ERROR in ' . $this->getTestName( $test ) . ': ' . $this->getErrorName( $e )
+               );
        }
 
        /**
         * A failure occurred.
         *
-        * @param  PHPUnit_Framework_Test                 $test
-        * @param  PHPUnit_Framework_AssertionFailedError $e
-        * @param  float                                  $time
+        * @param PHPUnit_Framework_Test $test
+        * @param PHPUnit_Framework_AssertionFailedError $e
+        * @param float $time
         */
-       public function addFailure( PHPUnit_Framework_Test $test, PHPUnit_Framework_AssertionFailedError $e, $time ) {
-               wfDebugLog( $this->logChannel, 'FAILURE in ' . $this->getTestName( $test ) . ': ' . $this->getErrorName( $e ) );
+       public function addFailure( PHPUnit_Framework_Test $test,
+               PHPUnit_Framework_AssertionFailedError $e, $time
+       ) {
+               wfDebugLog(
+                       $this->logChannel,
+                       'FAILURE in ' . $this->getTestName( $test ) . ': ' . $this->getErrorName( $e )
+               );
        }
 
        /**
         * Incomplete test.
         *
-        * @param  PHPUnit_Framework_Test $test
-        * @param  Exception              $e
-        * @param  float                  $time
+        * @param PHPUnit_Framework_Test $test
+        * @param Exception $e
+        * @param float $time
         */
        public function addIncompleteTest( PHPUnit_Framework_Test $test, Exception $e, $time ) {
-               wfDebugLog( $this->logChannel, 'Incomplete test ' . $this->getTestName( $test ) . ': ' . $this->getErrorName( $e ) );
+               wfDebugLog(
+                       $this->logChannel,
+                       'Incomplete test ' . $this->getTestName( $test ) . ': ' . $this->getErrorName( $e )
+               );
        }
 
        /**
         * Skipped test.
         *
-        * @param  PHPUnit_Framework_Test $test
-        * @param  Exception              $e
-        * @param  float                  $time
-        *
-        * @since  Method available since Release 3.0.0
+        * @param PHPUnit_Framework_Test $test
+        * @param Exception $e
+        * @param float $time
         */
        public function addSkippedTest( PHPUnit_Framework_Test $test, Exception $e, $time ) {
-               wfDebugLog( $this->logChannel, 'Skipped test ' . $this->getTestName( $test ) . ': ' . $this->getErrorName( $e ) );
+               wfDebugLog(
+                       $this->logChannel,
+                       'Skipped test ' . $this->getTestName( $test ) . ': ' . $this->getErrorName( $e )
+               );
        }
 
        /**
         * A test suite started.
         *
-        * @param  PHPUnit_Framework_TestSuite $suite
-        * @since  Method available since Release 2.2.0
+        * @param PHPUnit_Framework_TestSuite $suite
         */
        public function startTestSuite( PHPUnit_Framework_TestSuite $suite ) {
                wfDebugLog( $this->logChannel, 'START suite ' . $suite->getName() );
@@ -86,8 +94,7 @@ class MediaWikiPHPUnitTestListener implements PHPUnit_Framework_TestListener {
        /**
         * A test suite ended.
         *
-        * @param  PHPUnit_Framework_TestSuite $suite
-        * @since  Method available since Release 2.2.0
+        * @param PHPUnit_Framework_TestSuite $suite
         */
        public function endTestSuite( PHPUnit_Framework_TestSuite $suite ) {
                wfDebugLog( $this->logChannel, 'END suite ' . $suite->getName() );
@@ -96,19 +103,21 @@ class MediaWikiPHPUnitTestListener implements PHPUnit_Framework_TestListener {
        /**
         * A test started.
         *
-        * @param  PHPUnit_Framework_Test $test
+        * @param PHPUnit_Framework_Test $test
         */
        public function startTest( PHPUnit_Framework_Test $test ) {
+               Hooks::run( 'MediaWikiPHPUnitTest::startTest', [ $test ] );
                wfDebugLog( $this->logChannel, 'Start test ' . $this->getTestName( $test ) );
        }
 
        /**
         * A test ended.
         *
-        * @param  PHPUnit_Framework_Test $test
-        * @param  float                  $time
+        * @param PHPUnit_Framework_Test $test
+        * @param float $time
         */
        public function endTest( PHPUnit_Framework_Test $test, $time ) {
+               Hooks::run( 'MediaWikiPHPUnitTest::endTest', [ $test, $time ] );
                wfDebugLog( $this->logChannel, 'End test ' . $this->getTestName( $test ) );
        }
 }