MediaWiki REL1_33
CommentStoreTest Class Reference

Database CommentStore CommentStoreComment. More...

Inheritance diagram for CommentStoreTest:
Collaboration diagram for CommentStoreTest:

Public Member Functions

 testGetCommentErrors ()
 
 testGetFields ( $stage, $key, $expect)
 provideGetFields
 
 testGetFields_withKeyConstruction ( $stage, $key, $expect)
 provideGetFields
 
 testGetJoin ( $stage, $key, $expect)
 provideGetJoin
 
 testGetJoin_withKeyConstruction ( $stage, $key, $expect)
 provideGetJoin
 
 testGetStore ()
 
 testInsertRoundTrip ( $table, $key, $pk, $comment, $data, $expect)
 provideInsertRoundTrip
 
 testInsertRoundTrip_withKeyConstruction ( $table, $key, $pk, $comment, $data, $expect)
 provideInsertRoundTrip
 
 testInsertTooMuchData ()
 OverflowException Comment data is too long (65611 bytes, maximum is 65535)
 
 testInsertTruncation ()
 
 testInsertWithTempTableDeprecated ( $stage)
 provideStages
 
 testInsertWithTempTableWrong ( $stage)
 provideStages
 
 testInsertWrong ( $stage)
 provideStages
 
 testNewKey ()
 
- Public Member Functions inherited from MediaWikiTestCase
 __construct ( $name=null, array $data=[], $dataName='')
 
 __destruct ()
 
 addDBData ()
 Stub.
 
 addDBDataOnce ()
 Stub.
 
 copyTestData (IDatabase $source, IDatabase $target)
 Copy test data from one database connection to another.
 
 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)
 
 setGroupPermissions ( $newPerms, $newKey=null, $newValue=null)
 Alters $wgGroupPermissions for the duration of the test.
 
 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 provideGetFields ()
 
static provideGetJoin ()
 
static provideInsertRoundTrip ()
 
static provideStages ()
 
- Static Public Member Functions inherited from MediaWikiTestCase
static getMutableTestUser ( $groups=[])
 Convenience method for getting a mutable test user.
 
static getTestPrefixFor (IDatabase $db)
 
static getTestSysop ()
 Convenience method for getting an immutable admin test user.
 
static getTestUser ( $groups=[])
 Convenience method for getting an immutable test user.
 
static installMockMwServices (Config $configOverrides=null)
 Creates a new "mock" MediaWikiServices instance, and installs it.
 
static listTables (IMaintainableDatabase $db)
 
static prepareServices (Config $bootstrapConfig)
 
static resetNonServiceCaches ()
 Resets some non-service singleton instances and other static caches.
 
static restoreMwServices ()
 Restores the original, non-mock MediaWikiServices instance.
 
static setUpBeforeClass ()
 
static setupTestDB (IMaintainableDatabase $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

 getSchemaOverrides (IMaintainableDatabase $db)
 Stub.
 
 makeStore ( $stage)
 Create a store for a particular stage.
 
 makeStoreWithKey ( $stage, $key)
 Create a store for a particular stage and key (for testing deprecated behaviour)
 
- Protected Member Functions inherited from MediaWikiLangTestCase
 setUp ()
 
- Protected Member Functions inherited from MediaWikiTestCase
 addCoreDBData ()
 
 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=false, $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, array $options=[], array $join_conds=[])
 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.
 
 checkDbIsSupported ()
 
 checkPHPExtension ( $extName)
 Check if $extName is a loaded PHP extension, will skip the test whenever it is not loaded.
 
 editPage ( $pageName, $text, $summary='', $defaultNs=NS_MAIN)
 Edits or creates a page/revision.
 
 ensureMockDatabaseConnection (IDatabase $db)
 
 getDefaultWikitextNS ()
 Returns the ID of a namespace that defaults to Wikitext.
 
 getExistingTestPage ( $title=null)
 Returns a WikiPage representing an existing page.
 
 getNewTempDirectory ()
 obtains a new temporary directory
 
 getNewTempFile ()
 Obtains a new temporary file name.
 
 getNonexistingTestPage ( $title=null)
 Returns a WikiPage representing a non-existing page.
 
 insertPage ( $pageName, $text='Sample page for unit test.', $namespace=null, User $user=null)
 Insert a new page.
 
 isTestInDatabaseGroup ()
 
 isWikitextNS ( $ns)
 Returns true if the given namespace defaults to Wikitext according to $wgNamespaceContentModels.
 
 markTestSkippedIfDbType ( $type)
 Skip the test if using the specified database type.
 
 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.
 
 revisionDelete ( $rev, array $value=[Revision::DELETED_TEXT=> 1], $comment='')
 Revision-deletes a revision.
 
 setIniSetting ( $name, $value)
 Set an ini setting for the duration of the test.
 
 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 ()
 
 truncateTable ( $tableName, IDatabase $db=null)
 Empties the given table and resets any auto-increment counters.
 

Protected Attributes

 $tablesUsed
 
- Protected Attributes inherited from MediaWikiTestCase
Database $db
 Primary database.
 
array $supportedDBs
 
array $tablesUsed = []
 

Private Member Functions

 assertComment ( $expect, $actual, $from)
 

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 setupDatabaseWithTestPrefix (IMaintainableDatabase $db, $prefix=null)
 Setups a database with cloned tables using the given prefix.
 
static setupExternalStoreTestDBs ( $testPrefix=null)
 Clones the External Store database(s) for testing.
 
static stripStringKeys (&$r)
 Utility function for eliminating all string keys from an array.
 

Detailed Description

Database CommentStore CommentStoreComment.

Definition at line 13 of file CommentStoreTest.php.

Member Function Documentation

◆ assertComment()

CommentStoreTest::assertComment ( $expect,
$actual,
$from )
private

Definition at line 379 of file CommentStoreTest.php.

References and(), and text.

Referenced by testInsertRoundTrip(), and testInsertRoundTrip_withKeyConstruction().

◆ getSchemaOverrides()

CommentStoreTest::getSchemaOverrides ( IMaintainableDatabase $db)
protected

Stub.

If a test suite needs to test against a specific database schema, it should override this method and return the appropriate information from it.

Parameters
IMaintainableDatabase$dbThe DB connection to use for the mock schema. May be used to check the current state of the schema, to determine what overrides are needed.
Returns
array An associative array with the following fields:
  • 'scripts': any SQL scripts to run. If empty or not present, schema overrides are skipped.
  • 'create': A list of tables created (may or may not exist in the original schema).
  • 'drop': A list of tables dropped (expected to be present in the original schema).
  • 'alter': A list of tables altered (expected to be present in the original schema).

Reimplemented from MediaWikiTestCase.

Definition at line 22 of file CommentStoreTest.php.

◆ makeStore()

CommentStoreTest::makeStore ( $stage)
protected

◆ makeStoreWithKey()

CommentStoreTest::makeStoreWithKey ( $stage,
$key )
protected

Create a store for a particular stage and key (for testing deprecated behaviour)

Parameters
int$stage
string$key
Returns
CommentStore

Definition at line 59 of file CommentStoreTest.php.

References MediaWikiTestCase\hideDeprecated(), and MIGRATION_OLD.

Referenced by testGetFields_withKeyConstruction(), testGetJoin_withKeyConstruction(), and testInsertRoundTrip_withKeyConstruction().

◆ provideGetFields()

static CommentStoreTest::provideGetFields ( )
static

◆ provideGetJoin()

static CommentStoreTest::provideGetJoin ( )
static

◆ provideInsertRoundTrip()

static CommentStoreTest::provideInsertRoundTrip ( )
static

Definition at line 570 of file CommentStoreTest.php.

References MediaWikiTestCase\$db, and(), DB_REPLICA, and wfGetDB().

◆ provideStages()

static CommentStoreTest::provideStages ( )
static

◆ testGetCommentErrors()

CommentStoreTest::testGetCommentErrors ( )

Definition at line 669 of file CommentStoreTest.php.

References $res, and(), makeStore(), MIGRATION_NEW, and MIGRATION_OLD.

◆ testGetFields()

CommentStoreTest::testGetFields ( $stage,
$key,
$expect )

provideGetFields

Parameters
int$stage
string$key
array$expect

Definition at line 94 of file CommentStoreTest.php.

References and(), and makeStore().

◆ testGetFields_withKeyConstruction()

CommentStoreTest::testGetFields_withKeyConstruction ( $stage,
$key,
$expect )

provideGetFields

Parameters
int$stage
string$key
array$expect

Definition at line 82 of file CommentStoreTest.php.

References and(), and makeStoreWithKey().

◆ testGetJoin()

CommentStoreTest::testGetJoin ( $stage,
$key,
$expect )

provideGetJoin

Parameters
int$stage
string$key
array$expect

Definition at line 189 of file CommentStoreTest.php.

References and(), and makeStore().

◆ testGetJoin_withKeyConstruction()

CommentStoreTest::testGetJoin_withKeyConstruction ( $stage,
$key,
$expect )

provideGetJoin

Parameters
int$stage
string$key
array$expect

Definition at line 177 of file CommentStoreTest.php.

References and(), and makeStoreWithKey().

◆ testGetStore()

CommentStoreTest::testGetStore ( )

Definition at line 795 of file CommentStoreTest.php.

References and().

◆ testInsertRoundTrip()

CommentStoreTest::testInsertRoundTrip ( $table,
$key,
$pk,
$comment,
$data,
$expect )

provideInsertRoundTrip

Parameters
string$table
string$key
string$pk
string | Message$comment
array | null$data
array$expect

Definition at line 401 of file CommentStoreTest.php.

References $data, and(), assertComment(), list, makeStore(), MIGRATION_NEW, MIGRATION_OLD, MIGRATION_WRITE_BOTH, and MIGRATION_WRITE_NEW.

◆ testInsertRoundTrip_withKeyConstruction()

CommentStoreTest::testInsertRoundTrip_withKeyConstruction ( $table,
$key,
$pk,
$comment,
$data,
$expect )

provideInsertRoundTrip

Parameters
string$table
string$key
string$pk
string | Message$comment
array | null$data
array$expect

Definition at line 489 of file CommentStoreTest.php.

References $data, and(), assertComment(), list, makeStoreWithKey(), MIGRATION_NEW, MIGRATION_OLD, MIGRATION_WRITE_BOTH, and MIGRATION_WRITE_NEW.

◆ testInsertTooMuchData()

CommentStoreTest::testInsertTooMuchData ( )

OverflowException Comment data is too long (65611 bytes, maximum is 65535)

Definition at line 788 of file CommentStoreTest.php.

References and(), makeStore(), and MIGRATION_WRITE_BOTH.

◆ testInsertTruncation()

CommentStoreTest::testInsertTruncation ( )

Definition at line 770 of file CommentStoreTest.php.

References and(), makeStore(), and MIGRATION_WRITE_BOTH.

◆ testInsertWithTempTableDeprecated()

CommentStoreTest::testInsertWithTempTableDeprecated ( $stage)

provideStages

Parameters
int$stage

Definition at line 757 of file CommentStoreTest.php.

References and(), MediaWikiTestCase\hideDeprecated(), list, makeStore(), and MIGRATION_NEW.

◆ testInsertWithTempTableWrong()

CommentStoreTest::testInsertWithTempTableWrong ( $stage)

provideStages

Parameters
int$stageInvalidArgumentException Must use insert() for ipb_reason

Definition at line 748 of file CommentStoreTest.php.

References makeStore().

◆ testInsertWrong()

CommentStoreTest::testInsertWrong ( $stage)

provideStages

Parameters
int$stageInvalidArgumentException Must use insertWithTempTable() for rev_comment

Definition at line 737 of file CommentStoreTest.php.

References makeStore().

◆ testNewKey()

CommentStoreTest::testNewKey ( )

Definition at line 799 of file CommentStoreTest.php.

References and(), and MediaWikiTestCase\hideDeprecated().

Member Data Documentation

◆ $tablesUsed

CommentStoreTest::$tablesUsed
protected
Initial value:
= [
'revision',
'revision_comment_temp',
'ipblocks',
'comment',
]

Definition at line 15 of file CommentStoreTest.php.


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