Don't write exceptions to STDERR from BadTitleErrorTest or ThrottledErrorTest

It's annoying and pointless. Instead, have MWException write them to
standard output where we can catch them with ob_start().

Bug: T170028
Bug: T170029
Change-Id: Icd99c1c39d4a30d78c511d33948ef639e1b92455
This commit is contained in:
Brad Jorsch 2018-02-14 13:01:19 -05:00 committed by Krinkle
parent 63f673a04c
commit 4a275ea53c
3 changed files with 7 additions and 3 deletions

View file

@ -189,7 +189,7 @@ class MWException extends Exception {
} elseif ( self::isCommandLine() ) {
$message = $this->getText();
// T17602: STDERR may not be available
if ( defined( 'STDERR' ) ) {
if ( !defined( 'MW_PHPUNIT_TEST' ) && defined( 'STDERR' ) ) {
fwrite( STDERR, $message );
} else {
echo $message;

View file

@ -10,8 +10,10 @@ class BadTitleErrorTest extends MediaWikiTestCase {
try {
throw new BadTitleError();
} catch ( BadTitleError $e ) {
ob_start();
$e->report();
$this->assertTrue( true );
$text = ob_get_clean();
$this->assertContains( $e->getText(), $text );
}
}

View file

@ -11,8 +11,10 @@ class ThrottledErrorTest extends MediaWikiTestCase {
try {
throw new ThrottledError();
} catch ( ThrottledError $e ) {
ob_start();
$e->report();
$this->assertTrue( true );
$text = ob_get_clean();
$this->assertContains( $e->getText(), $text );
}
}