From 9d90df7b0ba852972751208bf136192ec47bfac0 Mon Sep 17 00:00:00 2001 From: Piotr Miazga Date: Mon, 17 Jul 2017 21:34:45 +0200 Subject: [PATCH] SkinMinerva testGetContextSpecificModule test might use undefined title Test scenario for getContextSpecificModules() mocks only Skin->getTitle() behavior, but while executing isAllowedPageAction() Skin will create a UserPageHelper with default RequestContext. As RequestContext is not mocked, $context->getTitle() will return undefined what could lead to tests crash Changes: - instead of mocking SkinMinerva::getTitle() pass test context with injected title. Other tests will work properly as MediaWikiTestCase::tearDown() always restes RequestContext to default Bug: T170624 Change-Id: I872fddf8d9c52a6875bb6c69a12407a8125fba4c --- tests/phpunit/skins/SkinMinervaTest.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/tests/phpunit/skins/SkinMinervaTest.php b/tests/phpunit/skins/SkinMinervaTest.php index 7970ed6..9c47447 100644 --- a/tests/phpunit/skins/SkinMinervaTest.php +++ b/tests/phpunit/skins/SkinMinervaTest.php @@ -177,10 +177,10 @@ class SkinMinervaTest extends MediaWikiTestCase { ->getMock() ); $title = Title::newFromText( 'Test' ); - $skin->expects( $this->any() ) - ->method( 'getTitle' ) - ->will( $this->returnValue( $title ) ); + $testContext = RequestContext::getMain(); + $testContext->setTitle( $title ); + $skin->setContext ( $testContext ); $skin->setSkinOptions( [ 'fontChanger' => $fontchangerValue, 'backToTop' => $backToTopValue,