MediaWiki REL1_30
EditPageTest Class Reference

Editing. More...

Inheritance diagram for EditPageTest:
Collaboration diagram for EditPageTest:

Public Member Functions

 testAutoMerge ( $baseUser, $text, $adamsEdit, $bertasEdit, $expectedCode, $expectedText, $message=null)
 provideAutoMerge EditPage
 
 testCheckDirectEditingDisallowed_forNonTextContent ()
 @depends testAutoMerge
 
 testCreatePage ( $desc, $pageTitle, $user, $editText, $expectedCode, $expectedText, $ignoreBlank=false)
 provideCreatePages EditPage
 
 testCreatePageTrx ( $desc, $pageTitle, $user, $editText, $expectedCode, $expectedText, $ignoreBlank=false)
 provideCreatePages EditPage
 
 testExtractSectionTitle ( $section, $title)
 provideExtractSectionTitle EditPage::extractSectionTitle
 
 testSectionEdit ( $base, $section, $text, $summary, $expected)
 provideSectionEdit EditPage
 
 testUpdatePage ()
 
 testUpdatePageTrx ()
 
- Public Member Functions inherited from MediaWikiTestCase
 __call ( $func, $args)
 
 __construct ( $name=null, array $data=[], $dataName='')
 
 __destruct ()
 
 addDBData ()
 Stub.
 
 addDBDataOnce ()
 Stub.
 
 dbPrefix ()
 
 getCliArg ( $offset)
 
 hideDeprecated ( $function)
 Don't throw a warning if $function is deprecated and called later.
 
 needsDB ()
 
 run (PHPUnit_Framework_TestResult $result=null)
 
 setCliArg ( $offset, $value)
 
 setContentLang ( $lang)
 
 setupAllTestDBs ()
 Set up all test DBs.
 
 setUserLang ( $lang)
 
 testMediaWikiTestCaseParentSetupCalled ()
 Make sure MediaWikiTestCase extending classes have called their parent setUp method.
 
 usesTemporaryTables ()
 

Static Public Member Functions

static provideAutoMerge ()
 
static provideCreatePages ()
 
static provideExtractSectionTitle ()
 
static provideSectionEdit ()
 
- Static Public Member Functions inherited from MediaWikiTestCase
static getMutableTestUser ( $groups=[])
 Convenience method for getting a mutable test user.
 
static getTestSysop ()
 Convenience method for getting an immutable admin test user.
 
static getTestUser ( $groups=[])
 Convenience method for getting an immutable test user.
 
static listTables (IMaintainableDatabase $db)
 
static prepareServices (Config $bootstrapConfig)
 Prepare service configuration for unit testing.
 
static setUpBeforeClass ()
 
static setupTestDB (Database $db, $prefix)
 Creates an empty skeleton of the wiki database by cloning its structure to equivalent tables using the given $prefix.
 
static teardownTestDB ()
 Restores MediaWiki to using the table set (table prefix) it was using before setupTestDB() was called.
 
static wfResetOutputBuffersBarrier ( $buffer)
 Used as a marker to prevent wfResetOutputBuffers from breaking PHPUnit.
 

Protected Member Functions

 assertEdit ( $title, $baseText, $user=null, array $edit, $expectedCode=null, $expectedText=null, $message=null)
 Performs an edit and checks the result.
 
 assertEditedTextEquals ( $expected, $actual, $msg='')
 User input text is passed to rtrim() by edit page.
 
 forceRevisionDate (WikiPage $page, $timestamp)
 
 setUp ()
 
- Protected Member Functions inherited from MediaWikiTestCase
 addTmpFiles ( $files)
 
 arrayWrap (array $elements)
 Utility method taking an array of elements and wrapping each element in its own array.
 
 assertArrayEquals (array $expected, array $actual, $ordered=false, $named=false)
 Assert that two arrays are equal.
 
 assertFileContains ( $fileName, $actualData, $createIfMissing=true, $msg='')
 Check whether file contains given data.
 
 assertHTMLEquals ( $expected, $actual, $msg='')
 Put each HTML element on its own line and then equals() the results.
 
 assertSelect ( $table, $fields, $condition, array $expectedRows)
 Asserts that the given database query yields the rows given by $expectedRows.
 
 assertType ( $type, $actual, $message='')
 Asserts the type of the provided value.
 
 assertTypeOrValue ( $type, $actual, $value=false, $message='')
 Asserts that the provided variable is of the specified internal type or equals the $value argument.
 
 assertValidHtmlDocument ( $html)
 Asserts that the given string is valid HTML document.
 
 assertValidHtmlSnippet ( $html)
 Asserts that the given string is a valid HTML snippet.
 
 checkDbIsSupported ()
 
 checkPHPExtension ( $extName)
 Check if $extName is a loaded PHP extension, will skip the test whenever it is not loaded.
 
 getDefaultWikitextNS ()
 Returns the ID of a namespace that defaults to Wikitext.
 
 getNewTempDirectory ()
 obtains a new temporary directory
 
 getNewTempFile ()
 Obtains a new temporary file name.
 
 insertPage ( $pageName, $text='Sample page for unit test.', $namespace=null)
 Insert a new page.
 
 isWikitextNS ( $ns)
 Returns true if the given namespace defaults to Wikitext according to $wgNamespaceContentModels.
 
 markTestSkippedIfNoDiff3 ()
 Check, if $wgDiff3 is set and ready to merge Will mark the calling test as skipped, if not ready.
 
 mergeMwGlobalArrayValue ( $name, $values)
 Merges the given values into a MW global array variable.
 
 objectAssociativeSort (array &$array)
 Does an associative sort that works for objects.
 
 overrideMwServices (Config $configOverrides=null, array $services=[])
 Stashes the global instance of MediaWikiServices, and installs a new one, allowing test cases to override settings and services.
 
 setLogger ( $channel, LoggerInterface $logger)
 Sets the logger for a specified channel, for the duration of the test.
 
 setMwGlobals ( $pairs, $value=null)
 Sets a global, maintaining a stashed version of the previous global to be restored in tearDown.
 
 setService ( $name, $object)
 Sets a service, maintaining a stashed version of the previous service to be restored in tearDown.
 
 setTemporaryHook ( $hookName, $handler)
 Create a temporary hook handler which will be reset by tearDown.
 
 stashMwGlobals ( $globalKeys)
 Stashes the global, will be restored in tearDown()
 
 tearDown ()
 

Additional Inherited Members

- Public Attributes inherited from MediaWikiTestCase
const DB_PREFIX = 'unittest_'
 Table name prefixes.
 
const ORA_DB_PREFIX = 'ut_'
 
- Static Public Attributes inherited from MediaWikiTestCase
static TestUser[] $users
 
- Static Protected Member Functions inherited from MediaWikiTestCase
static getExternalStoreDatabaseConnections ()
 Gets master database connections for all of the ExternalStoreDB stores configured in $wgDefaultExternalStore.
 
static isUsingExternalStoreDB ()
 Check whether ExternalStoreDB is being used.
 
static resetGlobalServices (Config $bootstrapConfig=null)
 Reset global services, and install testing environment.
 
static setupDatabaseWithTestPrefix (IMaintainableDatabase $db, $prefix)
 Setups a database with the given prefix.
 
static setupExternalStoreTestDBs ( $testPrefix)
 Clones the External Store database(s) for testing.
 
static stripStringKeys (&$r)
 Utility function for eliminating all string keys from an array.
 
- Protected Attributes inherited from MediaWikiTestCase
Database $db
 Primary database.
 
array $supportedDBs
 
array $tablesUsed = []
 

Detailed Description

Editing.

Database ^— tell jenkins this test needs the database

medium ^— tell phpunit that these test cases may take longer than 2 seconds.

Definition at line 12 of file EditPageTest.php.

Member Function Documentation

◆ assertEdit()

EditPageTest::assertEdit ( $title,
$baseText,
$user = null,
array $edit,
$expectedCode = null,
$expectedText = null,
$message = null )
protected

Performs an edit and checks the result.

Parameters
string | Title$titleThe title of the page to edit
string | null$baseTextSome text to create the page with before attempting the edit.
User | string | null$userThe user to perform the edit as.
array$editAn array of request parameters used to define the edit to perform. Some well known fields are:
  • wpTextbox1: the text to submit
  • wpSummary: the edit summary
  • wpEditToken: the edit token (will be inserted if not provided)
  • wpEdittime: timestamp of the edit's base revision (will be inserted if not provided)
  • wpStarttime: timestamp when the edit started (will be inserted if not provided)
  • wpSectionTitle: the section to edit
  • wpMinorEdit: mark as minor edit
  • wpWatchthis: whether to watch the page
int | null$expectedCodeThe expected result code (EditPage::AS_XXX constants). Set to null to skip the check.
string | null$expectedTextThe text expected to be on the page after the edit. Set to null to skip the check.
string | null$messageAn optional message to show along with any error message.
Returns
WikiPage The page that was just edited, useful for getting the edit's rev_id, etc.

Definition at line 117 of file EditPageTest.php.

References $GLOBALS, $req, assertEditedTextEquals(), WikiPage\factory(), forceRevisionDate(), ContentHandler\getContentText(), MediaWikiTestCase\getDefaultWikitextNS(), ContentHandler\makeContent(), MediaWikiTestCase\setMwGlobals(), EditPage\UNICODE_CHECK, and wfTimestampNow().

Referenced by testAutoMerge(), testCreatePage(), testCreatePageTrx(), testSectionEdit(), testUpdatePage(), and testUpdatePageTrx().

◆ assertEditedTextEquals()

EditPageTest::assertEditedTextEquals ( $expected,
$actual,
$msg = '' )
protected

User input text is passed to rtrim() by edit page.

This is a simple wrapper around assertEquals() which calls rrtrim() to normalize the expected and actual texts.

Parameters
string$expected
string$actual
string$msg

Definition at line 88 of file EditPageTest.php.

Referenced by assertEdit().

◆ forceRevisionDate()

EditPageTest::forceRevisionDate ( WikiPage $page,
$timestamp )
protected

◆ provideAutoMerge()

static EditPageTest::provideAutoMerge ( )
static

◆ provideCreatePages()

static EditPageTest::provideCreatePages ( )
static

◆ provideExtractSectionTitle()

static EditPageTest::provideExtractSectionTitle ( )
static

Definition at line 45 of file EditPageTest.php.

References false.

◆ provideSectionEdit()

static EditPageTest::provideSectionEdit ( )
static

Definition at line 472 of file EditPageTest.php.

◆ setUp()

EditPageTest::setUp ( )
protected

◆ testAutoMerge()

EditPageTest::testAutoMerge ( $baseUser,
$text,
$adamsEdit,
$bertasEdit,
$expectedCode,
$expectedText,
$message = null )

◆ testCheckDirectEditingDisallowed_forNonTextContent()

EditPageTest::testCheckDirectEditingDisallowed_forNonTextContent ( )

@depends testAutoMerge

Definition at line 689 of file EditPageTest.php.

References $GLOBALS, $req, WikiPage\factory(), serialize(), EditPage\UNICODE_CHECK, and wfTimestampNow().

◆ testCreatePage()

EditPageTest::testCreatePage ( $desc,
$pageTitle,
$user,
$editText,
$expectedCode,
$expectedText,
$ignoreBlank = false )

◆ testCreatePageTrx()

EditPageTest::testCreatePageTrx ( $desc,
$pageTitle,
$user,
$editText,
$expectedCode,
$expectedText,
$ignoreBlank = false )

◆ testExtractSectionTitle()

EditPageTest::testExtractSectionTitle ( $section,
$title )

provideExtractSectionTitle EditPage::extractSectionTitle

Definition at line 40 of file EditPageTest.php.

References $section, and EditPage\extractSectionTitle().

◆ testSectionEdit()

EditPageTest::testSectionEdit ( $base,
$section,
$text,
$summary,
$expected )

provideSectionEdit EditPage

Definition at line 529 of file EditPageTest.php.

References $base, $section, EditPage\AS_SUCCESS_UPDATE, and assertEdit().

◆ testUpdatePage()

EditPageTest::testUpdatePage ( )

◆ testUpdatePageTrx()

EditPageTest::testUpdatePageTrx ( )

The documentation for this class was generated from the following file: