From 765e575aa7fe6b70168cdf8e0bbcda2873f5b99a Mon Sep 17 00:00:00 2001 From: aude Date: Fri, 25 Jul 2014 15:05:39 +0200 Subject: [PATCH] Improvements to RCCacheEntryFactoryTest and helper class * pass User as argument when making the test context * override rc_source when applicable Change-Id: Id2094978d9f5ba962e76de7df29638e15a7547c3 --- .../changes/RCCacheEntryFactoryTest.php | 26 +++++++----- .../changes/TestRecentChangesHelper.php | 41 ++++++++++++------- 2 files changed, 42 insertions(+), 25 deletions(-) diff --git a/tests/phpunit/includes/changes/RCCacheEntryFactoryTest.php b/tests/phpunit/includes/changes/RCCacheEntryFactoryTest.php index 3acc8ada7b..c3b8ce68fd 100644 --- a/tests/phpunit/includes/changes/RCCacheEntryFactoryTest.php +++ b/tests/phpunit/includes/changes/RCCacheEntryFactoryTest.php @@ -57,8 +57,6 @@ class RCCacheEntryFactoryTest extends MediaWikiLangTestCase { } public function editChangeProvider() { - $user = $this->testRecentChangesHelper->getTestUser(); - return array( array( array( @@ -73,7 +71,7 @@ class RCCacheEntryFactoryTest extends MediaWikiLangTestCase { $this->getContext(), $this->getMessages(), $this->testRecentChangesHelper->makeEditRecentChange( - $user, + $this->getTestUser(), 'Xyz', 5, // curid 191, // thisid @@ -113,8 +111,6 @@ class RCCacheEntryFactoryTest extends MediaWikiLangTestCase { } public function deleteChangeProvider() { - $user = $this->testRecentChangesHelper->getTestUser(); - return array( array( array( @@ -127,7 +123,8 @@ class RCCacheEntryFactoryTest extends MediaWikiLangTestCase { $this->getContext(), $this->getMessages(), $this->testRecentChangesHelper->makeLogRecentChange( - $user, + 'delete', + $this->getTestUser(), 'Abc', '20131103212153', 0, // counter @@ -166,8 +163,6 @@ class RCCacheEntryFactoryTest extends MediaWikiLangTestCase { } public function revUserDeleteProvider() { - $user = $this->testRecentChangesHelper->getTestUser(); - return array( array( array( @@ -182,7 +177,7 @@ class RCCacheEntryFactoryTest extends MediaWikiLangTestCase { $this->getContext(), $this->getMessages(), $this->testRecentChangesHelper->makeDeletedEditRecentChange( - $user, + $this->getTestUser(), 'Zzz', '20131103212153', 191, // thisid @@ -313,8 +308,19 @@ class RCCacheEntryFactoryTest extends MediaWikiLangTestCase { ); } + private function getTestUser() { + $user = User::newFromName( 'TestRecentChangesUser' ); + + if ( !$user->getId() ) { + $user->addToDatabase(); + } + + return $user; + } + private function getContext() { - $context = $this->testRecentChangesHelper->getTestContext(); + $user = $this->getTestUser(); + $context = $this->testRecentChangesHelper->getTestContext( $user ); $title = Title::newFromText( 'RecentChanges', NS_SPECIAL ); $context->setTitle( $title ); diff --git a/tests/phpunit/includes/changes/TestRecentChangesHelper.php b/tests/phpunit/includes/changes/TestRecentChangesHelper.php index 1f6b1e0ee2..bb6ebecf48 100644 --- a/tests/phpunit/includes/changes/TestRecentChangesHelper.php +++ b/tests/phpunit/includes/changes/TestRecentChangesHelper.php @@ -26,7 +26,7 @@ class TestRecentChangesHelper { return $this->makeRecentChange( $attribs, $counter, $watchingUsers ); } - public function makeLogRecentChange( User $user, $titleText, $timestamp, $counter, + public function makeLogRecentChange( $logType, User $user, $titleText, $timestamp, $counter, $watchingUsers ) { $attribs = array_merge( @@ -41,8 +41,9 @@ class TestRecentChangesHelper { 'rc_new_len' => null, 'rc_type' => 3, 'rc_logid' => 25, - 'rc_log_type' => 'delete', - 'rc_log_action' => 'delete' + 'rc_log_type' => $logType, + 'rc_log_action' => $logType, + 'rc_source' => 'mw.log' ) ); @@ -67,6 +68,27 @@ class TestRecentChangesHelper { return $this->makeRecentChange( $attribs, $counter, $watchingUsers ); } + public function makeNewBotEditRecentChange( User $user, $titleText, $curid, $thisid, $lastid, + $timestamp, $counter, $watchingUsers + ) { + + $attribs = array_merge( + $this->getDefaultAttributes( $titleText, $timestamp ), + array( + 'rc_user' => $user->getId(), + 'rc_user_text' => $user->getName(), + 'rc_this_oldid' => $thisid, + 'rc_last_oldid' => $lastid, + 'rc_cur_id' => $curid, + 'rc_type' => 1, + 'rc_bot' => 1, + 'rc_source' => 'mw.new' + ) + ); + + return $this->makeRecentChange( $attribs, $counter, $watchingUsers ); + } + private function makeRecentChange( $attribs, $counter, $watchingUsers ) { $change = new RecentChange(); $change->setAttribs( $attribs ); @@ -101,21 +123,10 @@ class TestRecentChangesHelper { ); } - public function getTestUser() { - $user = User::newFromName( 'TestRecentChangesUser' ); - - if ( !$user->getId() ) { - $user->addToDatabase(); - } - - return $user; - } - - public function getTestContext() { + public function getTestContext( User $user ) { $context = new RequestContext(); $context->setLanguage( Language::factory( 'en' ) ); - $user = $this->getTestUser(); $context->setUser( $user ); return $context; -- 2.20.1