diff options
Diffstat (limited to 'MLEB/Translate/tests/phpunit')
14 files changed, 32 insertions, 55 deletions
diff --git a/MLEB/Translate/tests/phpunit/HookDocTest.php b/MLEB/Translate/tests/phpunit/HookDocTest.php index d2cb6aaa..616a6a53 100644 --- a/MLEB/Translate/tests/phpunit/HookDocTest.php +++ b/MLEB/Translate/tests/phpunit/HookDocTest.php @@ -73,9 +73,9 @@ class HookDocTest extends MediaWikiTestCase { protected static function getJSHooksFromFile( $file ) { $content = file_get_contents( $file ); $m = []; - preg_match_all( '/(?:mw\.translateHooks\.run)\(\s*([\'"])(.*?)\1/', $content, $m ); + preg_match_all( '/\bmw\.translateHooks\.run\(\s*[\'"]([^\'"]+)/', $content, $m ); $hooks = []; - foreach ( $m[2] as $hook ) { + foreach ( $m[1] as $hook ) { $hooks[$hook] = []; } @@ -85,9 +85,9 @@ class HookDocTest extends MediaWikiTestCase { protected static function getPHPHooksFromFile( $file ) { $content = file_get_contents( $file ); $m = []; - preg_match_all( '/(?:wfRunHooks|Hooks\:\:run)\(\s*([\'"])(.*?)\1/', $content, $m ); + preg_match_all( '/\bHooks::run\(\s*[\'"]([^\'"]+)/', $content, $m ); $hooks = []; - foreach ( $m[2] as $hook ) { + foreach ( $m[1] as $hook ) { $hooks[$hook] = []; } diff --git a/MLEB/Translate/tests/phpunit/MessageCollectionTest.php b/MLEB/Translate/tests/phpunit/MessageCollectionTest.php index e73eb4ff..4d819377 100644 --- a/MLEB/Translate/tests/phpunit/MessageCollectionTest.php +++ b/MLEB/Translate/tests/phpunit/MessageCollectionTest.php @@ -23,7 +23,7 @@ class MessageCollectionTest extends MediaWikiTestCase { $wgHooks['TranslatePostInitGroups'] = [ [ $this, 'getTestGroups' ] ]; $mg = MessageGroups::singleton(); - $mg->setCache( wfGetCache( 'hash' ) ); + $mg->setCache( new WANObjectCache( [ 'cache' => wfGetCache( 'hash' ) ] ) ); $mg->recache(); MessageIndex::setInstance( new HashMessageIndex() ); @@ -41,8 +41,7 @@ class MessageCollectionTest extends MediaWikiTestCase { } public function testMessage() { - $user = new MockSuperUser(); - $user->setId( 123 ); + $user = $this->getTestSysop()->getUser(); $title = Title::newFromText( 'MediaWiki:translated/fi' ); $page = WikiPage::factory( $title ); $content = ContentHandler::makeContent( 'pupuliini', $title ); @@ -63,8 +62,8 @@ class MessageCollectionTest extends MediaWikiTestCase { $this->assertEquals( 'translated', $translated->key() ); $this->assertEquals( 'bunny', $translated->definition() ); $this->assertEquals( 'pupuliini', $translated->translation() ); - $this->assertEquals( 'SuperUser', $translated->getProperty( 'last-translator-text' ) ); - $this->assertEquals( 123, $translated->getProperty( 'last-translator-id' ) ); + $this->assertEquals( $user->getName(), $translated->getProperty( 'last-translator-text' ) ); + $this->assertEquals( $user->getId(), $translated->getProperty( 'last-translator-id' ) ); $this->assertEquals( 'translated', $translated->getProperty( 'status' ), diff --git a/MLEB/Translate/tests/phpunit/MessageGroupStatesUpdaterJobTest.php b/MLEB/Translate/tests/phpunit/MessageGroupStatesUpdaterJobTest.php index 078868ce..e96e8bee 100644 --- a/MLEB/Translate/tests/phpunit/MessageGroupStatesUpdaterJobTest.php +++ b/MLEB/Translate/tests/phpunit/MessageGroupStatesUpdaterJobTest.php @@ -17,7 +17,7 @@ class MessageGroupStatesUpdaterJobTest extends MediaWikiTestCase { $wgHooks['TranslatePostInitGroups'] = [ [ $this, 'getTestGroups' ] ]; $mg = MessageGroups::singleton(); - $mg->setCache( wfGetCache( 'hash' ) ); + $mg->setCache( new WANObjectCache( [ 'cache' => wfGetCache( 'hash' ) ] ) ); $mg->recache(); } @@ -110,7 +110,7 @@ class MessageGroupStatesUpdaterJobTest extends MediaWikiTestCase { * This tests fails regularly on WMF CI but haven't been able to reproduce locally. */ public function testHooks() { - $user = new MockSuperUser(); + $user = $this->getTestSysop()->getUser(); $group = MessageGroups::getGroup( 'group-trans' ); // In the beginning... diff --git a/MLEB/Translate/tests/phpunit/MessageGroupsTest.php b/MLEB/Translate/tests/phpunit/MessageGroupsTest.php index 1ab9fad5..2770683c 100644 --- a/MLEB/Translate/tests/phpunit/MessageGroupsTest.php +++ b/MLEB/Translate/tests/phpunit/MessageGroupsTest.php @@ -29,7 +29,7 @@ class MessageGroupsTest extends MediaWikiTestCase { $wgHooks['TranslatePostInitGroups'] = [ 'MessageGroups::getConfiguredGroups' ]; $mg = MessageGroups::singleton(); - $mg->setCache( wfGetCache( 'hash' ) ); + $mg->setCache( new WANObjectCache( [ 'cache' => wfGetCache( 'hash' ) ] ) ); $mg->recache(); MessageIndex::setInstance( new HashMessageIndex() ); diff --git a/MLEB/Translate/tests/phpunit/MessageIndexRebuildJobTest.php b/MLEB/Translate/tests/phpunit/MessageIndexRebuildJobTest.php index a756c069..7b77723e 100644 --- a/MLEB/Translate/tests/phpunit/MessageIndexRebuildJobTest.php +++ b/MLEB/Translate/tests/phpunit/MessageIndexRebuildJobTest.php @@ -27,7 +27,7 @@ class MessageIndexRebuildJobTest extends MediaWikiTestCase { $wgHooks['TranslatePostInitGroups'] = []; $mg = MessageGroups::singleton(); - $mg->setCache( wfGetCache( 'hash' ) ); + $mg->setCache( new WANObjectCache( [ 'cache' => wfGetCache( 'hash' ) ] ) ); $mg->recache(); MessageIndex::setInstance( new HashMessageIndex() ); diff --git a/MLEB/Translate/tests/phpunit/MockSuperUser.php b/MLEB/Translate/tests/phpunit/MockSuperUser.php deleted file mode 100644 index 0ebe1356..00000000 --- a/MLEB/Translate/tests/phpunit/MockSuperUser.php +++ /dev/null @@ -1,24 +0,0 @@ -<?php - -/** - * Just call SuperUser when you need to be able to do everything. - */ -class MockSuperUser extends User { - protected $id = 666; - - public function setId( $id ) { - $this->id = $id; - } - - public function getId() { - return $this->id; - } - - public function getName() { - return 'SuperUser'; - } - - public function isAllowed( $right = '' ) { - return true; - } -} diff --git a/MLEB/Translate/tests/phpunit/PageTranslationTaggingTest.php b/MLEB/Translate/tests/phpunit/PageTranslationTaggingTest.php index 2e2a6c20..e457aa70 100644 --- a/MLEB/Translate/tests/phpunit/PageTranslationTaggingTest.php +++ b/MLEB/Translate/tests/phpunit/PageTranslationTaggingTest.php @@ -18,7 +18,7 @@ class PageTranslationTaggingTest extends MediaWikiTestCase { $wgHooks['TranslatePostInitGroups'] = [ 'MessageGroups::getTranslatablePages' ]; $mg = MessageGroups::singleton(); - $mg->setCache( wfGetCache( 'hash' ) ); + $mg->setCache( new WANObjectCache( [ 'cache' => wfGetCache( 'hash' ) ] ) ); $mg->recache(); MessageIndex::setInstance( new HashMessageIndex() ); @@ -95,7 +95,7 @@ class PageTranslationTaggingTest extends MediaWikiTestCase { } public function testTranslationPageRestrictions() { - $superUser = new MockSuperUser(); + $superUser = $this->getTestSysop()->getUser(); $title = Title::newFromText( 'Translatable page' ); $page = WikiPage::factory( $title ); $content = ContentHandler::makeContent( '<translate>Hello</translate>', $title ); diff --git a/MLEB/Translate/tests/phpunit/SolrTTMServerTest.php b/MLEB/Translate/tests/phpunit/SolrTTMServerTest.php index ac0a19d6..dbd22df6 100644 --- a/MLEB/Translate/tests/phpunit/SolrTTMServerTest.php +++ b/MLEB/Translate/tests/phpunit/SolrTTMServerTest.php @@ -30,7 +30,7 @@ class SolrTTMServerTest extends MediaWikiTestCase { $wgHooks['TranslatePostInitGroups'] = [ [ $this, 'addGroups' ] ]; $mg = MessageGroups::singleton(); - $mg->setCache( wfGetCache( 'hash' ) ); + $mg->setCache( new WANObjectCache( [ 'cache' => wfGetCache( 'hash' ) ] ) ); $mg->recache(); MessageIndex::setInstance( new HashMessageIndex() ); diff --git a/MLEB/Translate/tests/phpunit/SpecialPagesTest.php b/MLEB/Translate/tests/phpunit/SpecialPagesTest.php index 4a412da8..e4bf26ef 100644 --- a/MLEB/Translate/tests/phpunit/SpecialPagesTest.php +++ b/MLEB/Translate/tests/phpunit/SpecialPagesTest.php @@ -26,7 +26,7 @@ class SpecialPagesTest extends MediaWikiTestCase { $wgHooks['TranslatePostInitGroups'] = []; $mg = MessageGroups::singleton(); - $mg->setCache( wfGetCache( 'hash' ) ); + $mg->setCache( new WANObjectCache( [ 'cache' => wfGetCache( 'hash' ) ] ) ); $mg->recache(); MessageIndex::setInstance( new HashMessageIndex() ); @@ -69,7 +69,7 @@ class SpecialPagesTest extends MediaWikiTestCase { $this->assertTrue( true, "Special page $name was executed successfully with anon user" ); - $user = new MockSuperUser(); + $user = $this->getTestSysop()->getUser(); $context->setUser( $user ); $page->setContext( $context ); diff --git a/MLEB/Translate/tests/phpunit/TranslateHooksTest.php b/MLEB/Translate/tests/phpunit/TranslateHooksTest.php index e591fc81..c711c557 100644 --- a/MLEB/Translate/tests/phpunit/TranslateHooksTest.php +++ b/MLEB/Translate/tests/phpunit/TranslateHooksTest.php @@ -25,7 +25,7 @@ class TranslateHooksTest extends MediaWikiLangTestCase { $wgHooks['TranslatePostInitGroups'] = [ [ $this, 'getTestGroups' ] ]; $mg = MessageGroups::singleton(); - $mg->setCache( wfGetCache( 'hash' ) ); + $mg->setCache( new WANObjectCache( [ 'cache' => wfGetCache( 'hash' ) ] ) ); $mg->recache(); MessageIndex::setInstance( new HashMessageIndex() ); @@ -44,7 +44,7 @@ class TranslateHooksTest extends MediaWikiLangTestCase { } public function testPreventCategorization() { - $user = new MockSuperUser(); + $user = $this->getTestSysop()->getUser(); $title = Title::makeTitle( NS_MEDIAWIKI, 'ugakey1/fi' ); $wikipage = WikiPage::factory( $title ); $content = ContentHandler::makeContent( '[[Category:Shouldnotbe]]', $title ); diff --git a/MLEB/Translate/tests/phpunit/TranslationFuzzyUpdaterTest.php b/MLEB/Translate/tests/phpunit/TranslationFuzzyUpdaterTest.php index ec4368e2..5bf8eff5 100644 --- a/MLEB/Translate/tests/phpunit/TranslationFuzzyUpdaterTest.php +++ b/MLEB/Translate/tests/phpunit/TranslationFuzzyUpdaterTest.php @@ -24,7 +24,7 @@ class TranslationFuzzyUpdaterTest extends MediaWikiTestCase { $wgHooks['TranslatePostInitGroups'] = [ [ $this, 'getTestGroups' ] ]; $mg = MessageGroups::singleton(); - $mg->setCache( wfGetCache( 'hash' ) ); + $mg->setCache( new WANObjectCache( [ 'cache' => wfGetCache( 'hash' ) ] ) ); $mg->recache(); MessageIndex::setInstance( new HashMessageIndex() ); diff --git a/MLEB/Translate/tests/phpunit/api/ApiQueryMessageGroupsTest.php b/MLEB/Translate/tests/phpunit/api/ApiQueryMessageGroupsTest.php index 670c2def..4ce7eebe 100644 --- a/MLEB/Translate/tests/phpunit/api/ApiQueryMessageGroupsTest.php +++ b/MLEB/Translate/tests/phpunit/api/ApiQueryMessageGroupsTest.php @@ -24,7 +24,7 @@ class ApiQueryMessageGroupsTest extends ApiTestCase { $wgHooks['TranslatePostInitGroups'] = [ [ $this, 'getTestGroups' ] ]; $mg = MessageGroups::singleton(); - $mg->setCache( wfGetCache( 'hash' ) ); + $mg->setCache( new WANObjectCache( [ 'cache' => wfGetCache( 'hash' ) ] ) ); $mg->recache(); } diff --git a/MLEB/Translate/tests/phpunit/api/ApiTranslationReviewTest.php b/MLEB/Translate/tests/phpunit/api/ApiTranslationReviewTest.php index 8266c0d4..930dad0e 100644 --- a/MLEB/Translate/tests/phpunit/api/ApiTranslationReviewTest.php +++ b/MLEB/Translate/tests/phpunit/api/ApiTranslationReviewTest.php @@ -16,12 +16,16 @@ class ApiTranslationReviewTest extends MediaWikiTestCase { global $wgHooks; $this->setMwGlobals( [ 'wgHooks' => $wgHooks, - 'wgGroupPermissions' => [], + 'wgGroupPermissions' => [ + 'sysop' => [ + 'translate-messagereview' => true, + ], + ], 'wgTranslateMessageNamespaces' => [ NS_MEDIAWIKI ], ] ); $wgHooks['TranslatePostInitGroups'] = [ [ $this, 'getTestGroups' ] ]; $mg = MessageGroups::singleton(); - $mg->setCache( wfGetCache( 'hash' ) ); + $mg->setCache( new WANObjectCache( [ 'cache' => wfGetCache( 'hash' ) ] ) ); $mg->recache(); MessageIndex::setInstance( new HashMessageIndex() ); @@ -40,13 +44,11 @@ class ApiTranslationReviewTest extends MediaWikiTestCase { } public function testgetReviewBlockers() { - $superUser1 = new MockSuperUser(); - $superUser1->setId( 1 ); + $superUser1 = $this->getMutableTestUser( [ 'sysop', 'bureaucrat' ] )->getUser(); - $superUser2 = new MockSuperUser(); - $superUser2->setId( 2 ); + $superUser2 = $this->getMutableTestUser( [ 'sysop', 'bureaucrat' ] )->getUser(); - $plainUser = User::newFromName( 'PlainUser' ); + $plainUser = $this->getMutableTestUser()->getUser(); $title = Title::makeTitle( NS_MEDIAWIKI, 'Ugakey1/fi' ); $content = ContentHandler::makeContent( 'trans1', $title ); diff --git a/MLEB/Translate/tests/phpunit/tag/PageTranslationHooksTest.php b/MLEB/Translate/tests/phpunit/tag/PageTranslationHooksTest.php index 375458b0..5aca5862 100644 --- a/MLEB/Translate/tests/phpunit/tag/PageTranslationHooksTest.php +++ b/MLEB/Translate/tests/phpunit/tag/PageTranslationHooksTest.php @@ -25,7 +25,7 @@ class PageTranslationHooksTest extends MediaWikiTestCase { $wgHooks['TranslatePostInitGroups'] = [ 'MessageGroups::getTranslatablePages' ]; $mg = MessageGroups::singleton(); - $mg->setCache( wfGetCache( 'hash' ) ); + $mg->setCache( new WANObjectCache( [ 'cache' => wfGetCache( 'hash' ) ] ) ); $mg->recache(); MessageIndex::setInstance( new HashMessageIndex() ); @@ -36,7 +36,7 @@ class PageTranslationHooksTest extends MediaWikiTestCase { global $wgParser; // Setup objects - $superUser = new MockSuperUser(); + $superUser = $this->getTestSysop()->getUser(); $translatablePageTitle = Title::newFromText( 'Vuosaari' ); $page = WikiPage::factory( $translatablePageTitle ); $text = '<translate>pupu</translate>'; |