MediaWiki REL1_33
MediaWiki\Auth\AuthManagerTest Class Reference

AuthManager Database \MediaWiki\Auth\AuthManager. More...

Inheritance diagram for MediaWiki\Auth\AuthManagerTest:
Collaboration diagram for MediaWiki\Auth\AuthManagerTest:

Public Member Functions

 onSecuritySensitiveOperationStatus (&$status, $operation, $session, $time)
 
 provideAccountCreation ()
 
 provideAccountLink ()
 
 provideAuthentication ()
 
 provideSetDefaultUserOptions ()
 
 testAccountCreation (StatusValue $preTest, $primaryTest, $secondaryTest, array $primaryResponses, array $secondaryResponses, array $managerResponses)
 provideAccountCreation
 
 testAccountCreationLogging ( $isAnon, $logSubtype)
 provideAccountCreationLogging
 
 testAccountLink (StatusValue $preTest, array $primaryResponses, array $managerResponses)
 provideAccountLink
 
 testAllowsAuthenticationDataChange ( $primaryReturn, $secondaryReturn, $expect)
 provideAllowsAuthenticationDataChange
 
 testAllowsPropertyChange ()
 
 testAuthentication (StatusValue $preResponse, array $primaryResponses, array $secondaryResponses, array $managerResponses, $link=false)
 provideAuthentication
 
 testAuthenticationSessionData ()
 
 testAutoAccountCreation ()
 
 testAutoCreateFailOnLogin ()
 
 testAutoCreateOnLogin ()
 
 testBeginAccountCreation ()
 
 testBeginAccountLink ()
 
 testBeginAuthentication ()
 
 testCanAuthenticateNow ()
 
 testCanCreateAccount ()
 
 testCanCreateAccounts ()
 
 testCanLinkAccounts ()
 
 testChangeAuthenticationData ()
 
 testCheckAccountCreatePermissions ()
 
 testContinueAccountCreation ()
 
 testContinueAccountLink ()
 
 testCreateFromLogin ()
 
 testForcePrimaryAuthenticationProviders ()
 
 testGetAuthenticationRequests ( $action, $expect, $state=[])
 provideGetAuthenticationRequests
 
 testGetAuthenticationRequestsRequired ()
 
 testNormalizeUsername ()
 
 testProviderCreation ()
 
 testRevokeAccessForUser ()
 
 testSecuritySensitiveOperationStatus ( $mutableSession)
 provideSecuritySensitiveOperationStatus
 
 testSetDefaultUserOptions ( $contLang, $useContextLang, $expectedLang, $expectedVariant)
 provideSetDefaultUserOptions
 
 testSingleton ()
 
 testUserCanAuthenticate ( $primary1Can, $primary2Can, $expect)
 provideUserCanAuthenticate
 
 testUserExists ( $primary1Exists, $primary2Exists, $expect)
 provideUserExists
 
- 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 provideAccountCreationLogging ()
 
static provideAllowsAuthenticationDataChange ()
 
static provideGetAuthenticationRequests ()
 
static provideSecuritySensitiveOperationStatus ()
 
static provideUserCanAuthenticate ()
 
static provideUserExists ()
 
- 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

 getMockSessionProvider ( $canChangeUser=null, array $methods=[])
 Setup SessionManager with a mock session provider.
 
 hook ( $hook, $expect)
 Sets a mock on a hook.
 
 initializeConfig ()
 Initialize the AuthManagerConfig variable in $this->config.
 
 initializeManager ( $regen=false)
 Initialize $this->manager.
 
 message ( $key, $params=[])
 Ensure a value is a clean Message object.
 
 unhook ( $hook)
 Unsets a hook.
 
- 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.
 
 getSchemaOverrides (IMaintainableDatabase $db)
 Stub.
 
 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.
 
 setUp ()
 
 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

Config $config
 
LoggerInterface $logger
 
AuthManager $manager
 
TestingAccessWrapper $managerPriv
 
 $preauthMocks = []
 
 $primaryauthMocks = []
 
WebRequest $request
 
 $secondaryauthMocks = []
 
- Protected Attributes inherited from MediaWikiTestCase
Database $db
 Primary database.
 
array $supportedDBs
 
array $tablesUsed = []
 

Private Member Functions

 assertResponseEquals (AuthenticationResponse $expected, AuthenticationResponse $actual, $msg='')
 Test two AuthenticationResponses for equality.
 

Static Private Member Functions

static usernameForCreation ( $uniq='')
 

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

AuthManager Database \MediaWiki\Auth\AuthManager.

Definition at line 20 of file AuthManagerTest.php.

Member Function Documentation

◆ assertResponseEquals()

MediaWiki\Auth\AuthManagerTest::assertResponseEquals ( AuthenticationResponse $expected,
AuthenticationResponse $actual,
$msg = '' )
private

Test two AuthenticationResponses for equality.

We don't want to use regular assertEquals because that recursively compares members, which leads to false negatives if e.g. Language caches are reset.

Parameters
AuthenticationResponse$response1
AuthenticationResponse$response2
string$msg
Returns
bool

Definition at line 87 of file AuthManagerTest.php.

References and().

Referenced by MediaWiki\Auth\AuthManagerTest\testAccountCreation(), MediaWiki\Auth\AuthManagerTest\testAccountLink(), and MediaWiki\Auth\AuthManagerTest\testAuthentication().

◆ getMockSessionProvider()

MediaWiki\Auth\AuthManagerTest::getMockSessionProvider ( $canChangeUser = null,
array $methods = [] )
protected

Setup SessionManager with a mock session provider.

Parameters
bool | null$canChangeUserIf non-null, canChangeUser will be mocked to return this
array$methodsAdditional methods to mock
Returns
array (MediaWiki\Session\SessionProvider, ScopedCallback)

Definition at line 160 of file AuthManagerTest.php.

References MediaWiki\Auth\AuthManagerTest\$manager, and(), any, and MediaWiki\Auth\AuthManagerTest\initializeConfig().

Referenced by MediaWiki\Auth\AuthManagerTest\testBeginAuthentication(), MediaWiki\Auth\AuthManagerTest\testCanAuthenticateNow(), and MediaWiki\Auth\AuthManagerTest\testSecuritySensitiveOperationStatus().

◆ hook()

MediaWiki\Auth\AuthManagerTest::hook ( $hook,
$expect )
protected

Sets a mock on a hook.

Parameters
string$hook
object$expectFrom $this->once(), $this->never(), etc.
Returns
object $mock->expects( $expect )->method( ... ).

Definition at line 43 of file AuthManagerTest.php.

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

◆ initializeConfig()

MediaWiki\Auth\AuthManagerTest::initializeConfig ( )
protected

Initialize the AuthManagerConfig variable in $this->config.

Uses data from the various 'mocks' fields.

Definition at line 107 of file AuthManagerTest.php.

References MediaWiki\Auth\AuthManagerTest\$config, $type, and and().

Referenced by MediaWiki\Auth\AuthManagerTest\getMockSessionProvider(), MediaWiki\Auth\AuthManagerTest\initializeManager(), and MediaWiki\Auth\AuthManagerTest\testProviderCreation().

◆ initializeManager()

MediaWiki\Auth\AuthManagerTest::initializeManager ( $regen = false)
protected

Initialize $this->manager.

Parameters
bool$regenForce a call to $this->initializeConfig()

Definition at line 135 of file AuthManagerTest.php.

References and(), and MediaWiki\Auth\AuthManagerTest\initializeConfig().

Referenced by MediaWiki\Auth\AuthManagerTest\testAccountCreation(), MediaWiki\Auth\AuthManagerTest\testAccountCreationLogging(), MediaWiki\Auth\AuthManagerTest\testAccountLink(), MediaWiki\Auth\AuthManagerTest\testAllowsAuthenticationDataChange(), MediaWiki\Auth\AuthManagerTest\testAllowsPropertyChange(), MediaWiki\Auth\AuthManagerTest\testAuthentication(), MediaWiki\Auth\AuthManagerTest\testAuthenticationSessionData(), MediaWiki\Auth\AuthManagerTest\testAutoAccountCreation(), MediaWiki\Auth\AuthManagerTest\testAutoCreateFailOnLogin(), MediaWiki\Auth\AuthManagerTest\testAutoCreateOnLogin(), MediaWiki\Auth\AuthManagerTest\testBeginAccountCreation(), MediaWiki\Auth\AuthManagerTest\testBeginAccountLink(), MediaWiki\Auth\AuthManagerTest\testBeginAuthentication(), MediaWiki\Auth\AuthManagerTest\testCanAuthenticateNow(), MediaWiki\Auth\AuthManagerTest\testCanCreateAccount(), MediaWiki\Auth\AuthManagerTest\testCanCreateAccounts(), MediaWiki\Auth\AuthManagerTest\testCanLinkAccounts(), MediaWiki\Auth\AuthManagerTest\testChangeAuthenticationData(), MediaWiki\Auth\AuthManagerTest\testCheckAccountCreatePermissions(), MediaWiki\Auth\AuthManagerTest\testContinueAccountCreation(), MediaWiki\Auth\AuthManagerTest\testContinueAccountLink(), MediaWiki\Auth\AuthManagerTest\testCreateFromLogin(), MediaWiki\Auth\AuthManagerTest\testForcePrimaryAuthenticationProviders(), MediaWiki\Auth\AuthManagerTest\testGetAuthenticationRequests(), MediaWiki\Auth\AuthManagerTest\testGetAuthenticationRequestsRequired(), MediaWiki\Auth\AuthManagerTest\testNormalizeUsername(), MediaWiki\Auth\AuthManagerTest\testProviderCreation(), MediaWiki\Auth\AuthManagerTest\testRevokeAccessForUser(), MediaWiki\Auth\AuthManagerTest\testSecuritySensitiveOperationStatus(), MediaWiki\Auth\AuthManagerTest\testSetDefaultUserOptions(), MediaWiki\Auth\AuthManagerTest\testUserCanAuthenticate(), and MediaWiki\Auth\AuthManagerTest\testUserExists().

◆ message()

MediaWiki\Auth\AuthManagerTest::message ( $key,
$params = [] )
protected

Ensure a value is a clean Message object.

Parameters
string | Message$key
array$params
Returns
Message

Definition at line 66 of file AuthManagerTest.php.

References $params, and and().

◆ onSecuritySensitiveOperationStatus()

MediaWiki\Auth\AuthManagerTest::onSecuritySensitiveOperationStatus ( & $status,
$operation,
$session,
$time )

Definition at line 415 of file AuthManagerTest.php.

◆ provideAccountCreation()

◆ provideAccountCreationLogging()

static MediaWiki\Auth\AuthManagerTest::provideAccountCreationLogging ( )
static

Definition at line 2339 of file AuthManagerTest.php.

References null.

◆ provideAccountLink()

◆ provideAllowsAuthenticationDataChange()

static MediaWiki\Auth\AuthManagerTest::provideAllowsAuthenticationDataChange ( )
static

Definition at line 1311 of file AuthManagerTest.php.

References and().

◆ provideAuthentication()

◆ provideGetAuthenticationRequests()

◆ provideSecuritySensitiveOperationStatus()

static MediaWiki\Auth\AuthManagerTest::provideSecuritySensitiveOperationStatus ( )
static

Definition at line 418 of file AuthManagerTest.php.

References false, and true.

◆ provideSetDefaultUserOptions()

MediaWiki\Auth\AuthManagerTest::provideSetDefaultUserOptions ( )

Definition at line 631 of file AuthManagerTest.php.

References null.

◆ provideUserCanAuthenticate()

static MediaWiki\Auth\AuthManagerTest::provideUserCanAuthenticate ( )
static

Definition at line 450 of file AuthManagerTest.php.

References false, and true.

◆ provideUserExists()

static MediaWiki\Auth\AuthManagerTest::provideUserExists ( )
static

Definition at line 1276 of file AuthManagerTest.php.

References false, and true.

◆ testAccountCreation()

◆ testAccountCreationLogging()

MediaWiki\Auth\AuthManagerTest::testAccountCreationLogging ( $isAnon,
$logSubtype )

◆ testAccountLink()

◆ testAllowsAuthenticationDataChange()

MediaWiki\Auth\AuthManagerTest::testAllowsAuthenticationDataChange ( $primaryReturn,
$secondaryReturn,
$expect )

provideAllowsAuthenticationDataChange

Parameters
StatusValue$primaryReturn
StatusValue$secondaryReturn
Status$expect

Definition at line 1291 of file AuthManagerTest.php.

References $req, and(), any, and MediaWiki\Auth\AuthManagerTest\initializeManager().

◆ testAllowsPropertyChange()

MediaWiki\Auth\AuthManagerTest::testAllowsPropertyChange ( )

◆ testAuthentication()

MediaWiki\Auth\AuthManagerTest::testAuthentication ( StatusValue $preResponse,
array $primaryResponses,
array $secondaryResponses,
array $managerResponses,
$link = false )

◆ testAuthenticationSessionData()

MediaWiki\Auth\AuthManagerTest::testAuthenticationSessionData ( )

◆ testAutoAccountCreation()

◆ testAutoCreateFailOnLogin()

◆ testAutoCreateOnLogin()

◆ testBeginAccountCreation()

◆ testBeginAccountLink()

◆ testBeginAuthentication()

◆ testCanAuthenticateNow()

MediaWiki\Auth\AuthManagerTest::testCanAuthenticateNow ( )

◆ testCanCreateAccount()

◆ testCanCreateAccounts()

◆ testCanLinkAccounts()

◆ testChangeAuthenticationData()

MediaWiki\Auth\AuthManagerTest::testChangeAuthenticationData ( )

◆ testCheckAccountCreatePermissions()

MediaWiki\Auth\AuthManagerTest::testCheckAccountCreatePermissions ( )

◆ testContinueAccountCreation()

◆ testContinueAccountLink()

◆ testCreateFromLogin()

◆ testForcePrimaryAuthenticationProviders()

MediaWiki\Auth\AuthManagerTest::testForcePrimaryAuthenticationProviders ( )

◆ testGetAuthenticationRequests()

◆ testGetAuthenticationRequestsRequired()

◆ testNormalizeUsername()

MediaWiki\Auth\AuthManagerTest::testNormalizeUsername ( )

◆ testProviderCreation()

◆ testRevokeAccessForUser()

MediaWiki\Auth\AuthManagerTest::testRevokeAccessForUser ( )

◆ testSecuritySensitiveOperationStatus()

◆ testSetDefaultUserOptions()

MediaWiki\Auth\AuthManagerTest::testSetDefaultUserOptions ( $contLang,
$useContextLang,
$expectedLang,
$expectedVariant )

provideSetDefaultUserOptions

Definition at line 611 of file AuthManagerTest.php.

References $context, and(), MediaWiki\Auth\AuthManagerTest\initializeManager(), and MediaWikiTestCase\setContentLang().

◆ testSingleton()

MediaWiki\Auth\AuthManagerTest::testSingleton ( )

Definition at line 205 of file AuthManagerTest.php.

References and(), and MediaWiki\Auth\AuthManager\singleton().

◆ testUserCanAuthenticate()

MediaWiki\Auth\AuthManagerTest::testUserCanAuthenticate ( $primary1Can,
$primary2Can,
$expect )

provideUserCanAuthenticate

Parameters
bool$primary1Can
bool$primary2Can
bool$expect

Definition at line 431 of file AuthManagerTest.php.

References and(), any, and MediaWiki\Auth\AuthManagerTest\initializeManager().

◆ testUserExists()

MediaWiki\Auth\AuthManagerTest::testUserExists ( $primary1Exists,
$primary2Exists,
$expect )

provideUserExists

Parameters
bool$primary1Exists
bool$primary2Exists
bool$expect

Definition at line 1257 of file AuthManagerTest.php.

References and(), any, and MediaWiki\Auth\AuthManagerTest\initializeManager().

◆ unhook()

◆ usernameForCreation()

Member Data Documentation

◆ $config

Config MediaWiki\Auth\AuthManagerTest::$config
protected

◆ $logger

LoggerInterface MediaWiki\Auth\AuthManagerTest::$logger
protected

◆ $manager

AuthManager MediaWiki\Auth\AuthManagerTest::$manager
protected

◆ $managerPriv

TestingAccessWrapper MediaWiki\Auth\AuthManagerTest::$managerPriv
protected

Definition at line 35 of file AuthManagerTest.php.

◆ $preauthMocks

MediaWiki\Auth\AuthManagerTest::$preauthMocks = []
protected

Definition at line 28 of file AuthManagerTest.php.

◆ $primaryauthMocks

MediaWiki\Auth\AuthManagerTest::$primaryauthMocks = []
protected

Definition at line 29 of file AuthManagerTest.php.

◆ $request

WebRequest MediaWiki\Auth\AuthManagerTest::$request
protected

Definition at line 22 of file AuthManagerTest.php.

◆ $secondaryauthMocks

MediaWiki\Auth\AuthManagerTest::$secondaryauthMocks = []
protected

Definition at line 30 of file AuthManagerTest.php.


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