MDL-75952 general: Since php81, refection->setAccessible() is no-op

Refereces:
- https://wiki.php.net/rfc/make-reflection-setaccessible-no-op
- https://www.php.net/manual/en/reflectionproperty.setaccessible.php
- https://www.php.net/manual/en/reflectionmethod.setaccessible.php

As of PHP 8.1.0, calling this method has no effect; all methods are
invokable by default. So, let's remove all uses from core, they are
no-op.
This commit is contained in:
Eloy Lafuente (stronk7)
2024-03-10 21:15:00 +01:00
parent 38a3310c92
commit 361dfe8145
134 changed files with 7 additions and 383 deletions
-6
View File
@@ -640,11 +640,9 @@ class component_test extends advanced_testcase {
*/
public function test_classloader($psr0, $psr4, $classname, $includedfiles): void {
$psr0namespaces = new ReflectionProperty('core_component', 'psr0namespaces');
$psr0namespaces->setAccessible(true);
$psr0namespaces->setValue(null, $psr0);
$psr4namespaces = new ReflectionProperty('core_component', 'psr4namespaces');
$psr4namespaces->setAccessible(true);
$psr4namespaces->setValue(null, $psr4);
core_component::classloader($classname);
@@ -775,16 +773,13 @@ class component_test extends advanced_testcase {
*/
public function test_psr_classloader($psr0, $psr4, $classname, $file): void {
$psr0namespaces = new ReflectionProperty('core_component', 'psr0namespaces');
$psr0namespaces->setAccessible(true);
$psr0namespaces->setValue(null, $psr0);
$psr4namespaces = new ReflectionProperty('core_component', 'psr4namespaces');
$psr4namespaces->setAccessible(true);
$psr4namespaces->setValue(null, $psr4);
$component = new ReflectionClass('core_component');
$psrclassloader = $component->getMethod('psr_classloader');
$psrclassloader->setAccessible(true);
$returnvalue = $psrclassloader->invokeArgs(null, [$classname]);
// Normalise to forward slashes for testing comparison.
@@ -845,7 +840,6 @@ class component_test extends advanced_testcase {
public function test_get_class_file($classname, $prefix, $path, $separators, $result): void {
$component = new ReflectionClass('core_component');
$psrclassloader = $component->getMethod('get_class_file');
$psrclassloader->setAccessible(true);
$file = $psrclassloader->invokeArgs(null, [$classname, $prefix, $path, $separators]);
$this->assertEquals($result, $file);