}
public function testCheckAccountCreatePermissions() {
- global $wgGroupPermissions;
-
- $this->stashMwGlobals( [ 'wgGroupPermissions' ] );
-
$this->initializeManager( true );
- $wgGroupPermissions['*']['createaccount'] = true;
+ $this->setGroupPermissions( '*', 'createaccount', true );
$this->assertEquals(
\Status::newGood(),
$this->manager->checkAccountCreatePermissions( new \User )
);
$readOnlyMode->setReason( false );
- $wgGroupPermissions['*']['createaccount'] = false;
+ $this->setGroupPermissions( '*', 'createaccount', false );
$status = $this->manager->checkAccountCreatePermissions( new \User );
$this->assertFalse( $status->isOK() );
$this->assertTrue( $status->hasMessage( 'badaccess-groups' ) );
- $wgGroupPermissions['*']['createaccount'] = true;
+ $this->setGroupPermissions( '*', 'createaccount', true );
$user = \User::newFromName( 'UTBlockee' );
if ( $user->getID() == 0 ) {
}
public function testAutoAccountCreation() {
- global $wgGroupPermissions, $wgHooks;
+ global $wgHooks;
// PHPUnit seems to have a bug where it will call the ->with()
// callbacks for our hooks again after the test is run (WTF?), which
$username = self::usernameForCreation();
$this->initializeManager();
- $this->stashMwGlobals( [ 'wgGroupPermissions' ] );
- $wgGroupPermissions['*']['createaccount'] = true;
- $wgGroupPermissions['*']['autocreateaccount'] = false;
+ $this->setGroupPermissions( '*', 'createaccount', true );
+ $this->setGroupPermissions( '*', 'autocreateaccount', false );
$this->mergeMwGlobalArrayValue( 'wgObjectCaches',
[ __METHOD__ => [ 'class' => 'HashBagOStuff' ] ] );
$this->assertSame( 'noname', $session->get( 'AuthManager::AutoCreateBlacklist' ) );
// IP unable to create accounts
- $wgGroupPermissions['*']['createaccount'] = false;
- $wgGroupPermissions['*']['autocreateaccount'] = false;
+ $this->setGroupPermissions( '*', 'createaccount', false );
+ $this->setGroupPermissions( '*', 'autocreateaccount', false );
$session->clear();
$user = \User::newFromName( $username );
$this->hook( 'LocalUserCreated', $this->never() );
// Test that both permutations of permissions are allowed
// (this hits the two "ok" entries in $mocks['pre'])
- $wgGroupPermissions['*']['createaccount'] = false;
- $wgGroupPermissions['*']['autocreateaccount'] = true;
+ $this->setGroupPermissions( '*', 'createaccount', false );
+ $this->setGroupPermissions( '*', 'autocreateaccount', true );
$session->clear();
$user = \User::newFromName( $username );
$this->hook( 'LocalUserCreated', $this->never() );
$this->unhook( 'LocalUserCreated' );
$this->assertEquals( \Status::newFatal( 'ok' ), $ret );
- $wgGroupPermissions['*']['createaccount'] = true;
- $wgGroupPermissions['*']['autocreateaccount'] = false;
+ $this->setGroupPermissions( '*', 'createaccount', true );
+ $this->setGroupPermissions( '*', 'autocreateaccount', false );
$session->clear();
$user = \User::newFromName( $username );
$this->hook( 'LocalUserCreated', $this->never() );