MediaWiki  1.28.0
ApiEditPageTest Class Reference

Tests for MediaWiki api.php?action=edit. More...

Inheritance diagram for ApiEditPageTest:
Collaboration diagram for ApiEditPageTest:

Public Member Functions

 testCheckDirectApiEditingDisallowed_forNonTextContent ()
 
 testEdit ()
 
 testEdit_redirect ()
 Ensure we can edit through a redirect, if adding a section. More...
 
 testEdit_redirectText ()
 Ensure we cannot edit through a redirect, if attempting to overwrite content. More...
 
 testEditAppend ($text, $op, $append, $expected)
 provideEditAppend More...
 
 testEditConflict ()
 
 testEditConflict_bug41990 ()
 
 testEditConflict_newSection ()
 Ensure that editing using section=new will prevent simple conflicts. More...
 
 testEditNewSection ()
 Test action=edit&section=new Run it twice so we test adding a new section on a page that doesn't exist (bug 52830) and one that does exist. More...
 
 testEditSection ()
 Test editing of sections. More...
 
 testSupportsDirectApiEditing_withContentHandlerOverride ()
 
 testUndoAfterContentModelChange ()
 This test verifies that after changing the content model of a page, undoing that edit via the API will also undo the content model change. More...
 
- Public Member Functions inherited from ApiTestCase
 testApiTestGroup ()
 
- Public Member Functions inherited from MediaWikiTestCase
 __call ($func, $args)
 
 __construct ($name=null, array $data=[], $dataName= '')
 
 __destruct ()
 
 addDBData ()
 Stub. More...
 
 addDBDataOnce ()
 Stub. More...
 
 dbPrefix ()
 
 getCliArg ($offset)
 
 hideDeprecated ($function)
 Don't throw a warning if $function is deprecated and called later. More...
 
 needsDB ()
 
 run (PHPUnit_Framework_TestResult $result=null)
 
 setCliArg ($offset, $value)
 
 setContentLang ($lang)
 
 setupAllTestDBs ()
 Set up all test DBs. More...
 
 setUserLang ($lang)
 
 testMediaWikiTestCaseParentSetupCalled ()
 Make sure MediaWikiTestCase extending classes have called their parent setUp method. More...
 
 usesTemporaryTables ()
 

Static Public Member Functions

static provideEditAppend ()
 
- Static Public Member Functions inherited from MediaWikiTestCase
static assertNotTag ($matcher, $actual, $message= '', $isHtml=true)
 
static assertTag ($matcher, $actual, $message= '', $isHtml=true)
 Note: we are overriding this method to remove the deprecated error. More...
 
static getMutableTestUser ($groups=[])
 Convenience method for getting a mutable test user. More...
 
static getTestSysop ()
 Convenience method for getting an immutable admin test user. More...
 
static getTestUser ($groups=[])
 Convenience method for getting an immutable test user. More...
 
static listTables (Database $db)
 
static prepareServices (Config $bootstrapConfig)
 Prepare service configuration for unit testing. More...
 
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. More...
 
static teardownTestDB ()
 Restores MediaWiki to using the table set (table prefix) it was using before setupTestDB() was called. More...
 
static wfResetOutputBuffersBarrier ($buffer)
 Used as a marker to prevent wfResetOutputBuffers from breaking PHPUnit. More...
 

Protected Member Functions

 forceRevisionDate (WikiPage $page, $timestamp)
 
 setUp ()
 
 tearDown ()
 
- Protected Member Functions inherited from ApiTestCase
 doApiRequest (array $params, array $session=null, $appendModule=false, User $user=null)
 Does the API request and returns the result. More...
 
 doApiRequestWithToken (array $params, array $session=null, User $user=null)
 Add an edit token to the API request This is cheating a bit – we grab a token in the correct format and then add it to the pseudo-session and to the request, without actually requesting a "real" edit token. More...
 
 doLogin ($testUser= 'sysop')
 
 editPage ($pageName, $text, $summary= '', $defaultNs=NS_MAIN)
 Edits or creates a page/revision. More...
 
 getTokenList (TestUser $user, $session=null)
 
 setUp ()
 
 tearDown ()
 
- Protected Member Functions inherited from MediaWikiLangTestCase
 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. More...
 
 assertArrayEquals (array $expected, array $actual, $ordered=false, $named=false)
 Assert that two arrays are equal. More...
 
 assertHTMLEquals ($expected, $actual, $msg= '')
 Put each HTML element on its own line and then equals() the results. More...
 
 assertSelect ($table, $fields, $condition, array $expectedRows)
 Asserts that the given database query yields the rows given by $expectedRows. More...
 
 assertType ($type, $actual, $message= '')
 Asserts the type of the provided value. More...
 
 assertTypeOrValue ($type, $actual, $value=false, $message= '')
 Asserts that the provided variable is of the specified internal type or equals the $value argument. More...
 
 assertValidHtmlDocument ($html)
 Asserts that the given string is valid HTML document. More...
 
 assertValidHtmlSnippet ($html)
 Asserts that the given string is a valid HTML snippet. More...
 
 checkDbIsSupported ()
 
 checkPHPExtension ($extName)
 Check if $extName is a loaded PHP extension, will skip the test whenever it is not loaded. More...
 
 getDefaultWikitextNS ()
 Returns the ID of a namespace that defaults to Wikitext. More...
 
 getNewTempDirectory ()
 obtains a new temporary directory More...
 
 getNewTempFile ()
 Obtains a new temporary file name. More...
 
 insertPage ($pageName, $text= 'Sample page for unit test.', $namespace=null)
 Insert a new page. More...
 
 isWikitextNS ($ns)
 Returns true if the given namespace defaults to Wikitext according to $wgNamespaceContentModels. More...
 
 markTestSkippedIfNoDiff3 ()
 Check, if $wgDiff3 is set and ready to merge Will mark the calling test as skipped, if not ready. More...
 
 mergeMwGlobalArrayValue ($name, $values)
 Merges the given values into a MW global array variable. More...
 
 objectAssociativeSort (array &$array)
 Does an associative sort that works for objects. More...
 
 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. More...
 
 setLogger ($channel, LoggerInterface $logger)
 Sets the logger for a specified channel, for the duration of the test. More...
 
 setMwGlobals ($pairs, $value=null)
 
 setService ($name, $object)
 Sets a service, maintaining a stashed version of the previous service to be restored in tearDown. More...
 
 setTemporaryHook ($hookName, $handler)
 Create a temporary hook handler which will be reset by tearDown. More...
 
 setUp ()
 
 stashMwGlobals ($globalKeys)
 Stashes the global, will be restored in tearDown() More...
 
 tearDown ()
 

Additional Inherited Members

- Public Attributes inherited from MediaWikiTestCase
const DB_PREFIX = 'unittest_'
 Table name prefixes. More...
 
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. More...
 
static isUsingExternalStoreDB ()
 Check whether ExternalStoreDB is being used. More...
 
static resetGlobalServices (Config $bootstrapConfig=null)
 Reset global services, and install testing environment. More...
 
static setupDatabaseWithTestPrefix (Database $db, $prefix)
 Setups a database with the given prefix. More...
 
static setupExternalStoreTestDBs ($testPrefix)
 Clones the External Store database(s) for testing. More...
 
static stripStringKeys (&$r)
 Utility function for eliminating all string keys from an array. More...
 
- Protected Attributes inherited from ApiTestCase
ApiTestContext $apiContext
 
- Protected Attributes inherited from MediaWikiTestCase
Database $db
 Primary database. More...
 
array $supportedDBs
 
array $tablesUsed = []
 
- Static Protected Attributes inherited from ApiTestCase
static $apiUrl
 

Detailed Description

Tests for MediaWiki api.php?action=edit.

Author
Daniel Kinzler

API Database medium

ApiEditPage

Definition at line 14 of file ApiEditPageTest.php.

Member Function Documentation

ApiEditPageTest::forceRevisionDate ( WikiPage  $page,
  $timestamp 
)
protected
static ApiEditPageTest::provideEditAppend ( )
static
Returns
array

Definition at line 107 of file ApiEditPageTest.php.

References page.

ApiEditPageTest::tearDown ( )
protected

Definition at line 45 of file ApiEditPageTest.php.

References cache, and MWNamespace\getCanonicalNamespaces().

ApiEditPageTest::testCheckDirectApiEditingDisallowed_forNonTextContent ( )

Definition at line 475 of file ApiEditPageTest.php.

References ApiTestCase\doApiRequestWithToken().

ApiEditPageTest::testEdit ( )

Definition at line 50 of file ApiEditPageTest.php.

References $name, and ApiTestCase\doApiRequestWithToken().

ApiEditPageTest::testEdit_redirect ( )

Ensure we can edit through a redirect, if adding a section.

Definition at line 250 of file ApiEditPageTest.php.

References $count, $name, $page, $title, ApiTestCase\doApiRequestWithToken(), EDIT_NEW, EDIT_UPDATE, WikiPage\factory(), forceRevisionDate(), list, and Title\newFromText().

ApiEditPageTest::testEdit_redirectText ( )

Ensure we cannot edit through a redirect, if attempting to overwrite content.

Definition at line 296 of file ApiEditPageTest.php.

References $count, $name, $page, $title, ApiTestCase\doApiRequestWithToken(), EDIT_NEW, EDIT_UPDATE, WikiPage\factory(), forceRevisionDate(), UsageException\getCodeString(), and Title\newFromText().

ApiEditPageTest::testEditAppend (   $text,
  $op,
  $append,
  $expected 
)

provideEditAppend

Definition at line 133 of file ApiEditPageTest.php.

References $content, $count, $name, $page, ApiTestCase\doApiRequestWithToken(), list, and Title\newFromText().

ApiEditPageTest::testEditConflict_bug41990 ( )
ApiEditPageTest::testEditConflict_newSection ( )

Ensure that editing using section=new will prevent simple conflicts.

Definition at line 380 of file ApiEditPageTest.php.

References $count, $name, $page, $title, ApiTestCase\doApiRequestWithToken(), EDIT_NEW, EDIT_UPDATE, WikiPage\factory(), forceRevisionDate(), list, and Title\newFromText().

ApiEditPageTest::testEditNewSection ( )

Test action=edit&section=new Run it twice so we test adding a new section on a page that doesn't exist (bug 52830) and one that does exist.

Definition at line 210 of file ApiEditPageTest.php.

References $name, ApiTestCase\doApiRequestWithToken(), WikiPage\factory(), list, Title\newFromText(), and Revision\RAW.

ApiEditPageTest::testEditSection ( )
ApiEditPageTest::testSupportsDirectApiEditing_withContentHandlerOverride ( )
ApiEditPageTest::testUndoAfterContentModelChange ( )

This test verifies that after changing the content model of a page, undoing that edit via the API will also undo the content model change.

Definition at line 522 of file ApiEditPageTest.php.

References $name, and ApiTestCase\doApiRequestWithToken().


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