Move utility methods from ApiTestCase to MediaWikiTestCase

Change-Id: I79c4e37092958c63a693194b27a9eafae70cb2f8
This commit is contained in:
Aryeh Gregor 2018-07-24 17:50:03 +03:00
parent 7a206823e3
commit 05d78a6c71
3 changed files with 39 additions and 39 deletions

View file

@ -2215,4 +2215,41 @@ abstract class MediaWikiTestCase extends PHPUnit\Framework\TestCase {
}
self::assertEquals( file_get_contents( $fileName ), $actualData, $msg );
}
/**
* Edits or creates a page/revision
* @param string $pageName Page title
* @param string $text Content of the page
* @param string $summary Optional summary string for the revision
* @param int $defaultNs Optional namespace id
* @return array Array as returned by WikiPage::doEditContent()
*/
protected function editPage( $pageName, $text, $summary = '', $defaultNs = NS_MAIN ) {
$title = Title::newFromText( $pageName, $defaultNs );
$page = WikiPage::factory( $title );
return $page->doEditContent( ContentHandler::makeContent( $text, $title ), $summary );
}
/**
* Revision-deletes a revision.
*
* @param Revision|int $rev Revision to delete
* @param array $value Keys are Revision::DELETED_* flags. Values are 1 to set the bit, 0 to
* clear, -1 to leave alone. (All other values also clear the bit.)
* @param string $comment Deletion comment
*/
protected function revisionDelete(
$rev, array $value = [ Revision::DELETED_TEXT => 1 ], $comment = ''
) {
if ( is_int( $rev ) ) {
$rev = Revision::newFromId( $rev );
}
RevisionDeleter::createList(
'revision', RequestContext::getMain(), $rev->getTitle(), [ $rev->getId() ]
)->setVisibility( [
'value' => $value,
'comment' => $comment,
] );
}
}

View file

@ -41,43 +41,6 @@ abstract class ApiTestCase extends MediaWikiLangTestCase {
parent::tearDown();
}
/**
* Edits or creates a page/revision
* @param string $pageName Page title
* @param string $text Content of the page
* @param string $summary Optional summary string for the revision
* @param int $defaultNs Optional namespace id
* @return array Array as returned by WikiPage::doEditContent()
*/
protected function editPage( $pageName, $text, $summary = '', $defaultNs = NS_MAIN ) {
$title = Title::newFromText( $pageName, $defaultNs );
$page = WikiPage::factory( $title );
return $page->doEditContent( ContentHandler::makeContent( $text, $title ), $summary );
}
/**
* Revision-deletes a revision.
*
* @param Revision|int $rev Revision to delete
* @param array $value Keys are Revision::DELETED_* flags. Values are 1 to set the bit, 0 to
* clear, -1 to leave alone. (All other values also clear the bit.)
* @param string $comment Deletion comment
*/
protected function revisionDelete(
$rev, array $value = [ Revision::DELETED_TEXT => 1 ], $comment = ''
) {
if ( is_int( $rev ) ) {
$rev = Revision::newFromId( $rev );
}
RevisionDeleter::createList(
'revision', RequestContext::getMain(), $rev->getTitle(), [ $rev->getId() ]
)->setVisibility( [
'value' => $value,
'comment' => $comment,
] );
}
/**
* Does the API request and returns the result.
*

View file

@ -315,7 +315,7 @@ class SearchEngineTest extends MediaWikiLangTestCase {
$availableResults[] = $title;
// pages not created must be filtered
if ( $i % 2 == 0 ) {
$this->editPage( $title );
$this->editSearchResultPage( $title );
}
}
MockCompletionSearchEngine::addMockResults( 'foo', $availableResults );
@ -332,7 +332,7 @@ class SearchEngineTest extends MediaWikiLangTestCase {
$this->assertFalse( $results->hasMoreResults() );
}
private function editPage( $title ) {
private function editSearchResultPage( $title ) {
$page = WikiPage::factory( Title::newFromText( $title ) );
$page->doEditContent(
new WikitextContent( 'UTContent' ),