MediaWiki REL1_30
AvailableRightsTest.php
Go to the documentation of this file.
1<?php
2
9class AvailableRightsTest extends PHPUnit_Framework_TestCase {
10
17 private function getAllVisibleRights() {
19
20 $rights = User::getAllRights();
21
22 foreach ( $wgGroupPermissions as $permissions ) {
23 $rights = array_merge( $rights, array_keys( $permissions ) );
24 }
25
26 foreach ( $wgRevokePermissions as $permissions ) {
27 $rights = array_merge( $rights, array_keys( $permissions ) );
28 }
29
30 $rights = array_unique( $rights );
31 sort( $rights );
32
33 return $rights;
34 }
35
36 public function testAvailableRights() {
37 $missingRights = array_diff(
38 $this->getAllVisibleRights(),
39 User::getAllRights()
40 );
41
42 $this->assertEquals(
43 [],
44 // Re-index to produce nicer output, keys are meaningless.
45 array_values( $missingRights ),
46 'Additional user rights need to be added to $wgAvailableRights or ' .
47 'via the "UserGetAllRights" hook. See the instructions at: ' .
48 'https://www.mediawiki.org/wiki/Manual:User_rights#Adding_new_rights'
49 );
50 }
51}
$wgGroupPermissions
Permission keys given to users in each group.
$wgRevokePermissions
Permission keys revoked from users in each group.
Try to make sure that extensions register all rights in $wgAvailableRights or via the 'UserGetAllRigh...
getAllVisibleRights()
Returns all rights that should be in $wgAvailableRights + all rights registered via the 'UserGetAllRi...