/** * @dataProvider getSiteMessageDataProvider */ public function testGetSiteMessage($expected, $isDisabled, $siteMessageMock, $wgSitenameMock) { $messageMock = $this->getMockBuilder('Message')->disableOriginalConstructor()->setMethods(['inContentLanguage', 'isDisabled', 'text'])->getMock(); $messageMock->expects($this->once())->method('isDisabled')->willReturn($isDisabled); $messageMock->expects($this->any())->method('text')->willReturn($siteMessageMock); $messageMock->expects($this->once())->method('inContentLanguage')->willReturn($messageMock); $this->mockGlobalVariable('wgSitename', $wgSitenameMock); $this->mockGlobalFunction('wfMessage', $messageMock); $mercuryApi = new MercuryApi(); $this->assertEquals($expected, $mercuryApi->getSiteMessage()); }
/** * @desc Purge the contributors data to guarantee that it will be refreshed next time it is required * * @param WikiPage $wikiPage * @param User $user * @param $revision * @param $current * @return bool */ public static function onArticleRollbackComplete(WikiPage $wikiPage, User $user, $revision, $current) { $articleId = $wikiPage->getId(); $key = MercuryApi::getTopContributorsKey($articleId, MercuryApiController::NUMBER_CONTRIBUTORS); WikiaDataAccess::cachePurge($key); return true; }