MediaWiki  1.30.0
MWNamespaceTest Class Reference

Test class for MWNamespace. More...

Inheritance diagram for MWNamespaceTest:
Collaboration diagram for MWNamespaceTest:

Public Member Functions

 __call ( $method, $args)
 
 assertDifferentSubject ( $ns1, $ns2, $msg='')
 
 assertSameSubject ( $ns1, $ns2, $msg='')
 
 provideHasTalkNamespace ()
 
 testCanTalk ( $index, $expected)
 provideHasTalkNamespace MWNamespace::canTalk More...
 
 testEquals ()
 Test MWNamespace::equals Note if we add a namespace registration system with keys like 'MAIN' we should add tests here for equivilance on things like 'MAIN' == 0 and 'MAIN' == NS_MAIN. More...
 
 testGetAssociated ()
 Regular getAssociated() calls Namespaces without an associated page (NS_MEDIA, NS_SPECIAL) are tested in the function testGetAssociatedExceptions() MWNamespace::getAssociated. More...
 
 testGetAssociatedExceptionsForNsMedia ()
 MWException MWNamespace::getAssociated. More...
 
 testGetAssociatedExceptionsForNsSpecial ()
 MWException MWNamespace::getAssociated. More...
 
 testGetContentNamespaces ()
 MWNamespace::getContentNamespaces. More...
 
 testGetSubject ()
 MWNamespace::getSubject. More...
 
 testGetSubjectNamespaces ()
 MWNamespace::getSubjectNamespaces. More...
 
 testGetTalk ()
 Regular getTalk() calls Namespaces without a talk page (NS_MEDIA, NS_SPECIAL) are tested in the function testGetTalkExceptions() MWNamespace::getTalk. More...
 
 testGetTalkExceptionsForNsMedia ()
 Exceptions with getTalk() NS_MEDIA does not have talk pages. More...
 
 testGetTalkExceptionsForNsSpecial ()
 Exceptions with getTalk() NS_SPECIAL does not have talk pages. More...
 
 testGetTalkNamespaces ()
 MWNamespace::getTalkNamespaces. More...
 
 testHasGenderDistinction ()
 MWNamespace::hasGenderDistinction. More...
 
 testHasSubpages ()
 MWNamespace::hasSubpages. More...
 
 testHasTalkNamespace ( $index, $expected)
 provideHasTalkNamespace MWNamespace::hasTalkNamespace More...
 
 testIsCapitalizedHardcodedAssertions ()
 Some namespaces are always capitalized per code definition in MWNamespace::$alwaysCapitalizedNamespaces MWNamespace::isCapitalized. More...
 
 testIsCapitalizedWithWgCapitalLinkOverrides ()
 Counter part for MWNamespace::testIsCapitalizedWithWgCapitalLinks() now testing the $wgCapitalLinkOverrides global. More...
 
 testIsCapitalizedWithWgCapitalLinks ()
 Follows up for testIsCapitalizedHardcodedAssertions() but alter the global $wgCapitalLink setting to have extended coverage. More...
 
 testIsContent ()
 MWNamespace::isContent. More...
 
 testIsContentAdvanced ()
 Similar to testIsContent() but alters the $wgContentNamespaces global variable. More...
 
 testIsMovable ()
 
 testIsNonincludable ()
 MWNamespace::isNonincludable. More...
 
 testIsSubject ()
 Please make sure to change testIsTalk() if you change the assertions below MWNamespace::isSubject. More...
 
 testIsTalk ()
 Reverse of testIsSubject(). More...
 
 testIsWatchable ()
 MWNamespace::isWatchable. More...
 
 testSpecialAndMediaAreDifferentSubjects ()
 MWNamespace::subjectEquals. More...
 
 testSubjectEquals ()
 MWNamespace::subjectEquals. More...
 
- Public Member Functions inherited from MediaWikiTestCase
 __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 ()
 

Protected Member Functions

 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...
 
 assertFileContains ( $fileName, $actualData, $createIfMissing=true, $msg='')
 Check whether file contains given data. 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)
 Sets a global, maintaining a stashed version of the previous global to be restored in tearDown. More...
 
 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...
 
 stashMwGlobals ( $globalKeys)
 Stashes the global, will be restored in tearDown() More...
 
 tearDown ()
 

Additional Inherited Members

- Static Public Member Functions inherited from MediaWikiTestCase
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 (IMaintainableDatabase $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...
 
- 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 (IMaintainableDatabase $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 MediaWikiTestCase
Database $db
 Primary database. More...
 
array $supportedDBs
 
array $tablesUsed = []
 

Detailed Description

Test class for MWNamespace.

Todo:

covers tags

FIXME: this test file is a mess

Definition at line 13 of file MWNamespaceTest.php.

Member Function Documentation

◆ __call()

MWNamespaceTest::__call (   $func,
  $args 
)
Since
1.18
Parameters
string$func
array$args
Returns
mixed
Exceptions
MWException

Reimplemented from MediaWikiTestCase.

Definition at line 589 of file MWNamespaceTest.php.

References $args, and MWNamespace\getCanonicalName().

◆ assertDifferentSubject()

MWNamespaceTest::assertDifferentSubject (   $ns1,
  $ns2,
  $msg = '' 
)

◆ assertSameSubject()

MWNamespaceTest::assertSameSubject (   $ns1,
  $ns2,
  $msg = '' 
)

Definition at line 625 of file MWNamespaceTest.php.

References MWNamespace\subjectEquals().

Referenced by testSubjectEquals().

◆ provideHasTalkNamespace()

MWNamespaceTest::provideHasTalkNamespace ( )
Todo:
Implement testGetCanonicalNamespaces().
Todo:
Implement testGetCanonicalName().
Todo:
Implement testGetCanonicalIndex().
Todo:
Implement testGetValidNamespaces().

Definition at line 265 of file MWNamespaceTest.php.

References false, NS_MAIN, NS_MEDIA, NS_SPECIAL, NS_TALK, NS_USER, NS_USER_TALK, and true.

◆ setUp()

MWNamespaceTest::setUp ( )
protected

Reimplemented from MediaWikiTestCase.

Definition at line 14 of file MWNamespaceTest.php.

References NS_MAIN, NS_TALK, NS_USER, NS_USER_TALK, and MediaWikiTestCase\setMwGlobals().

◆ testCanTalk()

MWNamespaceTest::testCanTalk (   $index,
  $expected 
)

provideHasTalkNamespace MWNamespace::canTalk

Parameters
int$index
bool$expected

Definition at line 299 of file MWNamespaceTest.php.

References MWNamespace\canTalk().

◆ testEquals()

MWNamespaceTest::testEquals ( )

Test MWNamespace::equals Note if we add a namespace registration system with keys like 'MAIN' we should add tests here for equivilance on things like 'MAIN' == 0 and 'MAIN' == NS_MAIN.

Todo:
Implement testExists().

MWNamespace::equals

Definition at line 176 of file MWNamespaceTest.php.

References MWNamespace\equals(), NS_MAIN, NS_PROJECT, NS_SPECIAL, NS_TALK, NS_TEMPLATE, NS_USER, and NS_USER_TALK.

◆ testGetAssociated()

MWNamespaceTest::testGetAssociated ( )

Regular getAssociated() calls Namespaces without an associated page (NS_MEDIA, NS_SPECIAL) are tested in the function testGetAssociatedExceptions() MWNamespace::getAssociated.

Definition at line 133 of file MWNamespaceTest.php.

References MWNamespace\getAssociated(), NS_MAIN, and NS_TALK.

◆ testGetAssociatedExceptionsForNsMedia()

MWNamespaceTest::testGetAssociatedExceptionsForNsMedia ( )

◆ testGetAssociatedExceptionsForNsSpecial()

MWNamespaceTest::testGetAssociatedExceptionsForNsSpecial ( )

◆ testGetContentNamespaces()

MWNamespaceTest::testGetContentNamespaces ( )

◆ testGetSubject()

MWNamespaceTest::testGetSubject ( )

◆ testGetSubjectNamespaces()

MWNamespaceTest::testGetSubjectNamespaces ( )

◆ testGetTalk()

MWNamespaceTest::testGetTalk ( )

Regular getTalk() calls Namespaces without a talk page (NS_MEDIA, NS_SPECIAL) are tested in the function testGetTalkExceptions() MWNamespace::getTalk.

Definition at line 100 of file MWNamespaceTest.php.

References MWNamespace\getTalk(), NS_MAIN, NS_TALK, NS_USER, and NS_USER_TALK.

◆ testGetTalkExceptionsForNsMedia()

MWNamespaceTest::testGetTalkExceptionsForNsMedia ( )

Exceptions with getTalk() NS_MEDIA does not have talk pages.

MediaWiki raise an exception for them. MWException MWNamespace::getTalk

Definition at line 113 of file MWNamespaceTest.php.

References MWNamespace\getTalk(), and NS_MEDIA.

◆ testGetTalkExceptionsForNsSpecial()

MWNamespaceTest::testGetTalkExceptionsForNsSpecial ( )

Exceptions with getTalk() NS_SPECIAL does not have talk pages.

MediaWiki raise an exception for them. MWException MWNamespace::getTalk

Definition at line 123 of file MWNamespaceTest.php.

References MWNamespace\getTalk(), and NS_SPECIAL.

◆ testGetTalkNamespaces()

MWNamespaceTest::testGetTalkNamespaces ( )

◆ testHasGenderDistinction()

MWNamespaceTest::testHasGenderDistinction ( )

◆ testHasSubpages()

MWNamespaceTest::testHasSubpages ( )

◆ testHasTalkNamespace()

MWNamespaceTest::testHasTalkNamespace (   $index,
  $expected 
)

provideHasTalkNamespace MWNamespace::hasTalkNamespace

Parameters
int$index
bool$expected

Definition at line 287 of file MWNamespaceTest.php.

References MWNamespace\hasTalkNamespace().

◆ testIsCapitalizedHardcodedAssertions()

MWNamespaceTest::testIsCapitalizedHardcodedAssertions ( )

Some namespaces are always capitalized per code definition in MWNamespace::$alwaysCapitalizedNamespaces MWNamespace::isCapitalized.

Definition at line 473 of file MWNamespaceTest.php.

References MWNamespace\isCapitalized(), NS_FILE, NS_MEDIA, NS_MEDIAWIKI, NS_SPECIAL, and NS_USER.

◆ testIsCapitalizedWithWgCapitalLinkOverrides()

MWNamespaceTest::testIsCapitalizedWithWgCapitalLinkOverrides ( )

Counter part for MWNamespace::testIsCapitalizedWithWgCapitalLinks() now testing the $wgCapitalLinkOverrides global.

Todo:
split groups of assertions in autonomous testing functions MWNamespace::isCapitalized

Definition at line 530 of file MWNamespaceTest.php.

References $wgCapitalLinkOverrides, global, NS_MEDIAWIKI, NS_PROJECT, NS_PROJECT_TALK, NS_SPECIAL, and NS_USER.

◆ testIsCapitalizedWithWgCapitalLinks()

MWNamespaceTest::testIsCapitalizedWithWgCapitalLinks ( )

Follows up for testIsCapitalizedHardcodedAssertions() but alter the global $wgCapitalLink setting to have extended coverage.

MWNamespace::isCapitalized() rely on two global settings: $wgCapitalLinkOverrides = []; by default $wgCapitalLinks = true; by default This function test $wgCapitalLinks

Global setting correctness is tested against the NS_PROJECT and NS_PROJECT_TALK namespaces since they are not hardcoded nor specials MWNamespace::isCapitalized

Definition at line 505 of file MWNamespaceTest.php.

References $wgCapitalLinks, global, NS_MEDIAWIKI, NS_PROJECT, NS_PROJECT_TALK, NS_SPECIAL, and NS_USER.

◆ testIsContent()

MWNamespaceTest::testIsContent ( )

◆ testIsContentAdvanced()

MWNamespaceTest::testIsContentAdvanced ( )

Similar to testIsContent() but alters the $wgContentNamespaces global variable.

MWNamespace::isContent

Definition at line 328 of file MWNamespaceTest.php.

References $wgContentNamespaces, global, and NS_MAIN.

◆ testIsMovable()

MWNamespaceTest::testIsMovable ( )
Todo:
Write more texts, handle $wgAllowImageMoving setting MWNamespace::isMovable

Definition at line 36 of file MWNamespaceTest.php.

References MWNamespace\isMovable(), and NS_SPECIAL.

◆ testIsNonincludable()

MWNamespaceTest::testIsNonincludable ( )

◆ testIsSubject()

MWNamespaceTest::testIsSubject ( )

Please make sure to change testIsTalk() if you change the assertions below MWNamespace::isSubject.

Definition at line 45 of file MWNamespaceTest.php.

References NS_MAIN, NS_MEDIA, NS_SPECIAL, NS_TALK, NS_USER, NS_USER_TALK, and user.

◆ testIsTalk()

MWNamespaceTest::testIsTalk ( )

Reverse of testIsSubject().

Please update testIsSubject() if you change assertions below MWNamespace::isTalk

Definition at line 66 of file MWNamespaceTest.php.

References NS_MAIN, NS_MEDIA, NS_SPECIAL, NS_TALK, NS_USER, NS_USER_TALK, and user.

◆ testIsWatchable()

MWNamespaceTest::testIsWatchable ( )

MWNamespace::isWatchable.

Definition at line 346 of file MWNamespaceTest.php.

References NS_MAIN, NS_MEDIA, NS_SPECIAL, and NS_TALK.

◆ testSpecialAndMediaAreDifferentSubjects()

MWNamespaceTest::testSpecialAndMediaAreDifferentSubjects ( )

◆ testSubjectEquals()

MWNamespaceTest::testSubjectEquals ( )

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