Remove use of the Revision object returned in WikiPage::doEditContent

Each file's changes are independent and can be reviewed separately

Bug: T251853
Bug: T254952
Change-Id: I197c3db4cfb2ead920c8e6071120ae29543ee404
This commit is contained in:
DannyS712 2020-06-09 23:20:52 +00:00
parent 4e2897575a
commit e36fc3a8dd
4 changed files with 19 additions and 16 deletions

View file

@ -23,6 +23,7 @@
use MediaWiki\Logger\LoggerFactory; use MediaWiki\Logger\LoggerFactory;
use MediaWiki\MediaWikiServices; use MediaWiki\MediaWikiServices;
use MediaWiki\Revision\RevisionRecord;
use Wikimedia\AtEase\AtEase; use Wikimedia\AtEase\AtEase;
use Wikimedia\Rdbms\Database; use Wikimedia\Rdbms\Database;
use Wikimedia\Rdbms\IDatabase; use Wikimedia\Rdbms\IDatabase;
@ -1706,18 +1707,18 @@ class LocalFile extends File {
$user $user
); );
if ( isset( $status->value['revision'] ) ) { if ( isset( $status->value['revision-record'] ) ) {
/** @var Revision $rev */ /** @var RevisionRecord $revRecord */
$rev = $status->value['revision']; $revRecord = $status->value['revision-record'];
// Associate new page revision id // Associate new page revision id
$logEntry->setAssociatedRevId( $rev->getId() ); $logEntry->setAssociatedRevId( $revRecord->getId() );
} }
// This relies on the resetArticleID() call in WikiPage::insertOn(), // This relies on the resetArticleID() call in WikiPage::insertOn(),
// which is triggered on $descTitle by doEditContent() above. // which is triggered on $descTitle by doEditContent() above.
if ( isset( $status->value['revision'] ) ) { if ( isset( $status->value['revision-record'] ) ) {
/** @var Revision $rev */ /** @var RevisionRecord $revRecord */
$rev = $status->value['revision']; $revRecord = $status->value['revision-record'];
$updateLogPage = $rev->getPage(); $updateLogPage = $revRecord->getPageId();
} }
} else { } else {
# Existing file page: invalidate description page cache # Existing file page: invalidate description page cache

View file

@ -22,7 +22,7 @@ class ApiComparePagesTest extends ApiTestCase {
if ( !$status->isOK() ) { if ( !$status->isOK() ) {
$this->fail( "Failed to create $title: " . $status->getWikiText( false, false, 'en' ) ); $this->fail( "Failed to create $title: " . $status->getWikiText( false, false, 'en' ) );
} }
return $status->value['revision']->getId(); return $status->value['revision-record']->getId();
} }
public function addDBDataOnce() { public function addDBDataOnce() {

View file

@ -1,5 +1,7 @@
<?php <?php
use MediaWiki\Revision\RevisionRecord;
/** /**
* @covers CategoryMembershipChangeJob * @covers CategoryMembershipChangeJob
* *
@ -48,11 +50,11 @@ class CategoryMembershipChangeJobTest extends MediaWikiTestCase {
ContentHandler::makeContent( $text, $this->title ), ContentHandler::makeContent( $text, $this->title ),
__METHOD__ __METHOD__
); );
/** @var Revision $revision */ /** @var RevisionRecord $revisionRecord */
$revision = $editResult->value['revision']; $revisionRecord = $editResult->value['revision-record'];
$this->runJobs(); $this->runJobs();
return $revision->getId(); return $revisionRecord->getId();
} }
/** /**

View file

@ -364,8 +364,8 @@ class PageArchiveTest extends MediaWikiTestCase {
$user = $this->getTestUser()->getUser(); $user = $this->getTestUser()->getUser();
$status = $page->doEditContent( $content, 'testing', EDIT_NEW, false, $user ); $status = $page->doEditContent( $content, 'testing', EDIT_NEW, false, $user );
/** @var Revision $newRev */ /** @var RevisionRecord $newRevRecord */
$newRev = $status->value['revision']; $newRevRecord = $status->value['revision-record'];
// force the revision timestamp // force the revision timestamp
$newTimestamp = wfTimestamp( $newTimestamp = wfTimestamp(
@ -376,7 +376,7 @@ class PageArchiveTest extends MediaWikiTestCase {
$this->db->update( $this->db->update(
'revision', 'revision',
[ 'rev_timestamp' => $this->db->timestamp( $newTimestamp ) ], [ 'rev_timestamp' => $this->db->timestamp( $newTimestamp ) ],
[ 'rev_id' => $newRev->getId() ] [ 'rev_id' => $newRevRecord->getId() ]
); );
// check that we don't get the existing revision too soon. // check that we don't get the existing revision too soon.
@ -392,7 +392,7 @@ class PageArchiveTest extends MediaWikiTestCase {
$rev = $this->archivedPage->getPreviousRevision( $afterNewTimestamp ); $rev = $this->archivedPage->getPreviousRevision( $afterNewTimestamp );
$this->assertNotNull( $rev ); $this->assertNotNull( $rev );
$this->assertSame( $newRev->getId(), $rev->getId() ); $this->assertSame( $newRevRecord->getId(), $rev->getId() );
} }
} }