wiki.techinc.nl/tests/phpunit/unit/includes/Permissions
Kunal Mehta 6f01b0d007 Support having groups inherit permissions from another group
There are common use cases to having a group inherit permissions from
another group. For example, if you have to have a "confirmed" group that
can be manually handed out to grant "autoconfirmed" status, or if you
wanted to make the "sysop" group also have "interface-admin" powers.

Previously to make this work you needed to either copy all the
$wgGroupPermission entries for the second group, or use a
$wgExtensionFunctions to copy it over at runtime. Neither are great
solutions, hence this patch.

This introduces a new configuration option, $wgGroupInheritsPermissions,
that GroupPermissionsLookup will use when determining what permissions
each group has. This option is not recursive for simplicity.

To make this work, Special:ListGroupRights now consults
GroupPermissionsLookup instead of looking at the
$wgGroupPermissions/$wgRevokePermissions globals. It also uses
UserGroupManager to get the list of all groups instead of looking at
more globals.

Anything still directly reading permissions from those globals is liable
to be broken, if they weren't already.

Bug: T275334
Change-Id: Iad72e126d2708012e1e403bee066b3017c16226d
2021-12-04 12:45:23 -08:00
..
GrantsInfoTest.php Reapply "GrantsInfo service to replace MWGrants" 2021-09-18 08:52:22 +00:00
GroupPermissionsLookupTest.php Support having groups inherit permissions from another group 2021-12-04 12:45:23 -08:00
PermissionManagerTest.php Support having groups inherit permissions from another group 2021-12-04 12:45:23 -08:00
PermissionStatusTest.php Authority: expose user block info 2021-06-30 13:42:21 +02:00
RestrictionStoreTest.php New RestrictionStore service 2021-08-28 16:01:06 +00:00
SimpleAuthorityTest.php Authority: expose user block info 2021-06-30 13:42:21 +02:00
UltimateAuthorityTest.php Authority: expose user block info 2021-06-30 13:42:21 +02:00
UserAuthorityTest.php build: Updating dependencies 2021-07-22 03:36:05 +00:00