20 for ( $i = 1; $i <= 4; $i++ ) {
24 $sysop = static::getTestSysop()->getUser();
27 'address' => $this->localUsers[2]->getName(),
28 'by' => $sysop->getId(),
29 'reason' => __METHOD__,
36 'address' => $this->localUsers[3]->getName(),
37 'by' => $sysop->getId(),
38 'reason' => __METHOD__,
53 $user2 = User::newFromName(
'UTLocalIdLookup2' );
55 $this->assertTrue( $user1->isAllowed(
'hideuser' ),
'sanity check' );
56 $this->assertFalse( $user2->isAllowed(
'hideuser' ),
'sanity check' );
58 $this->assertSame( [], $lookup->lookupCentralIds( [] ) );
61 foreach ( $this->localUsers as $localUser ) {
62 $expect[$localUser->getId()] = $localUser->getName();
68 $expect2[$this->localUsers[3]->getId()] =
'';
70 $arg = array_fill_keys( array_keys( $expect ),
'X' );
72 $this->assertSame( $expect2, $lookup->lookupCentralIds( $arg ) );
74 $this->assertSame( $expect, $lookup->lookupCentralIds( $arg, $user1 ) );
75 $this->assertSame( $expect2, $lookup->lookupCentralIds( $arg, $user2 ) );
81 $user2 = User::newFromName(
'UTLocalIdLookup2' );
83 $this->assertTrue( $user1->isAllowed(
'hideuser' ),
'sanity check' );
84 $this->assertFalse( $user2->isAllowed(
'hideuser' ),
'sanity check' );
86 $this->assertSame( [], $lookup->lookupUserNames( [] ) );
89 foreach ( $this->localUsers as $localUser ) {
90 $expect[$localUser->getName()] = $localUser->getId();
92 $expect[
'UTDoesNotExist'] =
'X';
96 $expect2[$this->localUsers[3]->getName()] =
'X';
98 $arg = array_fill_keys( array_keys( $expect ),
'X' );
100 $this->assertSame( $expect2, $lookup->lookupUserNames( $arg ) );
102 $this->assertSame( $expect, $lookup->lookupUserNames( $arg, $user1 ) );
103 $this->assertSame( $expect2, $lookup->lookupUserNames( $arg, $user2 ) );
109 $user2 = User::newFromName(
'DoesNotExist' );
111 $this->assertTrue( $lookup->isAttached( $user1 ) );
112 $this->assertFalse( $lookup->isAttached( $user2 ) );
115 $this->assertTrue( $lookup->isAttached( $user1, $wiki ) );
116 $this->assertFalse( $lookup->isAttached( $user2, $wiki ) );
119 $this->assertFalse( $lookup->isAttached( $user1, $wiki ) );
120 $this->assertFalse( $lookup->isAttached( $user2, $wiki ) );
132 'wgSharedDB' => $sharedDB ? $wgDBName :
null,
133 'wgSharedTables' => $sharedTable ? [
'user' ] : [],
134 'wgLocalDatabases' => $localDBSet ? [
'shared' ] : [],
139 $sharedDB && $sharedTable && $localDBSet,
140 $lookup->isAttached( $this->getLookupUser(),
'shared' )