createLoggedInUser(); CRM_Member_Task::tasks(); \CRM_Core_Config::singleton()->userPermissionClass->permissions = ['view memberships']; $tasks = CRM_Member_Task::permissionedTaskTitles(CRM_Core_Permission::VIEW); $this->assertEquals([8 => 'Export members', 5 => 'Print selected rows'], $tasks); \CRM_Core_Config::singleton()->userPermissionClass->permissions = ['delete in CiviMember', 'view memberships']; $tasks = CRM_Member_Task::permissionedTaskTitles(CRM_Core_Permission::VIEW); $this->assertEquals([8 => 'Export members', 5 => 'Print selected rows', 4 => 'Delete memberships'], $tasks); \CRM_Core_Config::singleton()->userPermissionClass->permissions = ['edit memberships']; $tasks = CRM_Member_Task::permissionedTaskTitles(CRM_Core_Permission::VIEW); $this->assertEquals([8 => 'Export members', 5 => 'Print selected rows'], $tasks); \CRM_Core_Config::singleton()->userPermissionClass->permissions = ['edit memberships']; $tasks = CRM_Member_Task::permissionedTaskTitles(CRM_Core_Permission::EDIT); $this->assertEquals([ 8 => 'Export members', 5 => 'Print selected rows', 9 => 'Email - send now (to 50 or less)', 201 => 'Mailing labels - print', 3 => 'Print/merge document for memberships', 6 => 'Update multiple memberships', ], $tasks); \CRM_Core_Config::singleton()->userPermissionClass->permissions = ['edit memberships', 'delete in CiviMember', 'edit groups']; $tasks = CRM_Member_Task::permissionedTaskTitles(CRM_Core_Permission::EDIT); $this->assertEquals([ 8 => 'Export members', 5 => 'Print selected rows', 9 => 'Email - send now (to 50 or less)', 201 => 'Mailing labels - print', 3 => 'Print/merge document for memberships', 6 => 'Update multiple memberships', 4 => 'Delete memberships', 12 => 'Group - create smart group', ], $tasks); } }