Pass a user to WikiPage::doDeleteArticleReal, use new signature

Don't need to worry about supporting prior versions, since its core

Bug: T247869
Change-Id: Iad9397327731817b8c276d0b9786c3bc5ecf6476
This commit is contained in:
DannyS712 2020-03-19 00:47:20 +00:00
parent c4a0f31d09
commit 7380aba100
9 changed files with 26 additions and 17 deletions

View file

@ -226,8 +226,15 @@ class FileDeleteForm {
$dbw->startAtomic( __METHOD__ );
// delete the associated article first
$error = '';
$deleteStatus = $page->doDeleteArticleReal( $reason, $suppress, 0, false, $error,
$user, $tags );
$deleteStatus = $page->doDeleteArticleReal(
$reason,
$user,
$suppress,
null,
$error,
null,
$tags
);
// doDeleteArticleReal() returns a non-fatal error status if the page
// or revision is missing, so check for isOK() rather than isGood()
if ( $deleteStatus->isOK() ) {

View file

@ -748,11 +748,11 @@ class MovePage {
$errs = [];
$status = $newpage->doDeleteArticleReal(
$overwriteMessage,
/* $suppress */ false,
$nt->getArticleID(),
/* $commit */ false,
$errs,
$user,
/* $suppress */ false,
/* unused */ null,
$errs,
/* unused */ null,
$changeTags,
'delete_redir'
);

View file

@ -591,8 +591,11 @@ class MovePageForm extends UnlistedSpecialPage {
}
}
$error = ''; // passed by ref
$deleteStatus = $page->doDeleteArticleReal( $reason, false, 0, true, $error, $user );
$deleteStatus = $page->doDeleteArticleReal(
$reason,
$user,
/* suppress */ false
);
if ( !$deleteStatus->isGood() ) {
$this->showForm( $deleteStatus->getErrorsArray() );

View file

@ -305,7 +305,7 @@ class EditPageTest extends MediaWikiLangTestCase {
if ( $expectedCode != EditPage::AS_BLANK_ARTICLE ) {
$latest = $page->getLatest();
$page->doDeleteArticleReal( $pageTitle );
$page->doDeleteArticleReal( $pageTitle, $this->getTestSysop()->getUser() );
$this->assertGreaterThan( 0, $latest, "Page revision ID updated in object" );
$this->assertEquals( $latest, $checkId, "Revision in Status for hook" );
@ -357,13 +357,13 @@ class EditPageTest extends MediaWikiLangTestCase {
if ( $expectedCode != EditPage::AS_BLANK_ARTICLE ) {
$latest = $page->getLatest();
$page->doDeleteArticleReal( $pageTitle );
$page->doDeleteArticleReal( $pageTitle, $this->getTestSysop()->getUser() );
$this->assertGreaterThan( 0, $latest, "Page #1 revision ID updated in object" );
$this->assertEquals( $latest, $checkIds[0], "Revision #1 in Status for hook" );
$latest2 = $page2->getLatest();
$page2->doDeleteArticleReal( $pageTitle2 );
$page2->doDeleteArticleReal( $pageTitle2, $this->getTestSysop()->getUser() );
$this->assertGreaterThan( 0, $latest2, "Page #2 revision ID updated in object" );
$this->assertEquals( $latest2, $checkIds[1], "Revision #2 in Status for hook" );

View file

@ -79,8 +79,7 @@ class TemplateCategoriesTest extends MediaWikiLangTestCase {
);
// Now delete the template
$error = '';
$template->doDeleteArticleReal( 'Delete the template', false, 0, true, $error, $user );
$template->doDeleteArticleReal( 'Delete the template', $user );
// Run the job queue
JobQueueGroup::destroySingletons();

View file

@ -67,7 +67,7 @@ class ApiComparePagesTest extends ApiTestCase {
self::$repl['pageG'] = Title::newFromText( 'ApiComparePagesTest G' )->getArticleID();
WikiPage::factory( Title::newFromText( 'ApiComparePagesTest C' ) )
->doDeleteArticleReal( 'Test for ApiComparePagesTest' );
->doDeleteArticleReal( 'Test for ApiComparePagesTest', $user );
RevisionDeleter::createList(
'revision',

View file

@ -73,7 +73,7 @@ class ApiQueryRecentChangesIntegrationTest extends ApiTestCase {
private function deletePage( LinkTarget $target, $reason ) {
$title = Title::newFromLinkTarget( $target );
$page = WikiPage::factory( $title );
$page->doDeleteArticleReal( $reason );
$page->doDeleteArticleReal( $reason, $this->getTestSysop()->getUser() );
}
/**

View file

@ -104,7 +104,7 @@ class ApiQueryWatchlistIntegrationTest extends ApiTestCase {
private function deletePage( LinkTarget $target, $reason ) {
$title = Title::newFromLinkTarget( $target );
$page = WikiPage::factory( $title );
$page->doDeleteArticleReal( $reason );
$page->doDeleteArticleReal( $reason, $this->getTestSysop()->getUser() );
}
/**

View file

@ -126,7 +126,7 @@ abstract class PageArchiveTestBase extends MediaWikiTestCase {
$this->ipRev = $revisionStore->insertRevisionOn( $rev, $dbw );
// Delete the page
$page->doDeleteArticleReal( 'Just a test deletion' );
$page->doDeleteArticleReal( 'Just a test deletion', $user );
$this->archivedPage = new PageArchive( $page->getTitle() );
}