X-Git-Url: https://git.heureux-cyclage.org/?a=blobdiff_plain;f=tests%2Fphpunit%2Ftests%2FMediaWikiTestCaseTest.php;h=edc81ff925f6fe7b9b1878a50f22467655fd1765;hb=2ee1e76266004a277314c393a93fd0e79dbbd650;hp=5d2f37e6a64227225ce1d415601c4ecacdd9aab2;hpb=bdfe02223205923d923923dd420ba0dd863cd0fe;p=lhc%2Fweb%2Fwiklou.git diff --git a/tests/phpunit/tests/MediaWikiTestCaseTest.php b/tests/phpunit/tests/MediaWikiTestCaseTest.php index 5d2f37e6a6..edc81ff925 100644 --- a/tests/phpunit/tests/MediaWikiTestCaseTest.php +++ b/tests/phpunit/tests/MediaWikiTestCaseTest.php @@ -9,8 +9,6 @@ use Psr\Log\LoggerInterface; */ class MediaWikiTestCaseTest extends MediaWikiTestCase { - const GLOBAL_KEY_NONEXISTING = 'MediaWikiTestCaseTestGLOBAL-NONExisting'; - private static $startGlobals = [ 'MediaWikiTestCaseTestGLOBAL-ExistingString' => 'foo', 'MediaWikiTestCaseTestGLOBAL-ExistingStringEmpty' => '', @@ -90,14 +88,22 @@ class MediaWikiTestCaseTest extends MediaWikiTestCase { /** * @covers MediaWikiTestCase::stashMwGlobals + * @covers MediaWikiTestCase::tearDown */ - public function testExceptionThrownWhenStashingNonExistentGlobals() { - $this->setExpectedException( - 'Exception', - 'Global with key ' . self::GLOBAL_KEY_NONEXISTING . ' doesn\'t exist and cant be stashed' + public function testSetNonExistentGlobalsAreUnsetOnTearDown() { + $globalKey = 'abcdefg1234567'; + $this->setMwGlobals( $globalKey, true ); + $this->assertTrue( + $GLOBALS[$globalKey], + 'Global failed to correctly set' ); - $this->stashMwGlobals( self::GLOBAL_KEY_NONEXISTING ); + $this->tearDown(); + + $this->assertFalse( + isset( $GLOBALS[$globalKey] ), + 'Global failed to be correctly unset' + ); } public function testOverrideMwServices() { @@ -132,10 +138,9 @@ class MediaWikiTestCaseTest extends MediaWikiTestCase { /** * @covers MediaWikiTestCase::setLogger - * @covers MediaWikiTestCase::restoreLogger + * @covers MediaWikiTestCase::restoreLoggers */ - public function testLoggersAreRestoredOnTearDown() { - // replacing an existing logger + public function testLoggersAreRestoredOnTearDown_replacingExistingLogger() { $logger1 = LoggerFactory::getInstance( 'foo' ); $this->setLogger( 'foo', $this->getMock( LoggerInterface::class ) ); $logger2 = LoggerFactory::getInstance( 'foo' ); @@ -144,17 +149,27 @@ class MediaWikiTestCaseTest extends MediaWikiTestCase { $this->assertSame( $logger1, $logger3 ); $this->assertNotSame( $logger1, $logger2 ); + } - // replacing a non-existing logger + /** + * @covers MediaWikiTestCase::setLogger + * @covers MediaWikiTestCase::restoreLoggers + */ + public function testLoggersAreRestoredOnTearDown_replacingNonExistingLogger() { $this->setLogger( 'foo', $this->getMock( LoggerInterface::class ) ); - $logger1 = LoggerFactory::getInstance( 'bar' ); + $logger1 = LoggerFactory::getInstance( 'foo' ); $this->tearDown(); - $logger2 = LoggerFactory::getInstance( 'bar' ); + $logger2 = LoggerFactory::getInstance( 'foo' ); $this->assertNotSame( $logger1, $logger2 ); $this->assertInstanceOf( '\Psr\Log\LoggerInterface', $logger2 ); + } - // replacing same logger twice + /** + * @covers MediaWikiTestCase::setLogger + * @covers MediaWikiTestCase::restoreLoggers + */ + public function testLoggersAreRestoredOnTearDown_replacingSameLoggerTwice() { $logger1 = LoggerFactory::getInstance( 'baz' ); $this->setLogger( 'foo', $this->getMock( LoggerInterface::class ) ); $this->setLogger( 'foo', $this->getMock( LoggerInterface::class ) );