Skip to content

Commit c3c729d

Browse files
Merge pull request #18553 from MoonE/reflection-property-setvalue-6
ReflectionProperty setValue call deprecated in PHP 8.3 (master)
2 parents ea30194 + bb34e72 commit c3c729d

33 files changed

Lines changed: 141 additions & 116 deletions

test/classes/AbstractTestCase.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
use PhpMyAdmin\Utils\HttpRequest;
2020
use PHPUnit\Framework\TestCase;
2121
use ReflectionClass;
22+
use ReflectionProperty;
2223

2324
use function array_keys;
2425
use function in_array;
@@ -84,7 +85,7 @@ protected function setUp(): void
8485
$this->setGlobalConfig();
8586
Cache::purge();
8687

87-
(new ReflectionClass(Relation::class))->getProperty('cache')->setValue([]);
88+
(new ReflectionProperty(Relation::class, 'cache'))->setValue(null, []);
8889
}
8990

9091
protected function loadContainerBuilder(): void

test/classes/ApplicationTest.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ public function testRunWithConfigError(): void
4242
->willThrowException(new ConfigException('Failed to load phpMyAdmin configuration.'));
4343

4444
$request = $this->createStub(ServerRequest::class);
45-
(new ReflectionProperty(Application::class, 'request'))->setValue($request);
45+
(new ReflectionProperty(Application::class, 'request'))->setValue(null, $request);
4646

4747
$template = new Template($config);
4848
$expected = $template->render('error/generic', [
@@ -59,7 +59,7 @@ public function testRunWithConfigError(): void
5959
$this->assertSame($config, $GLOBALS['config']);
6060
$this->assertSame($errorHandler, $GLOBALS['errorHandler']);
6161

62-
(new ReflectionProperty(Application::class, 'request'))->setValue(null);
62+
(new ReflectionProperty(Application::class, 'request'))->setValue(null, null);
6363
}
6464

6565
public function testCheckTokenRequestParam(): void

test/classes/Config/FormDisplayTest.php

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -233,20 +233,14 @@ public function testValidateSelect(): void
233233
*/
234234
public function testHasErrors(): void
235235
{
236-
$attrErrors = new ReflectionProperty(FormDisplay::class, 'errors');
236+
$this->assertFalse($this->object->hasErrors());
237237

238-
$this->assertFalse(
239-
$this->object->hasErrors(),
240-
);
241-
242-
$attrErrors->setValue(
238+
(new ReflectionProperty(FormDisplay::class, 'errors'))->setValue(
243239
$this->object,
244240
[1, 2],
245241
);
246242

247-
$this->assertTrue(
248-
$this->object->hasErrors(),
249-
);
243+
$this->assertTrue($this->object->hasErrors());
250244
}
251245

252246
/**

test/classes/Config/FormTest.php

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -66,8 +66,7 @@ public function testContructor(): void
6666
*/
6767
public function testGetOptionType(): void
6868
{
69-
$attrFieldsTypes = new ReflectionProperty(Form::class, 'fieldsTypes');
70-
$attrFieldsTypes->setValue(
69+
(new ReflectionProperty(Form::class, 'fieldsTypes'))->setValue(
7170
$this->object,
7271
['7' => 'Seven'],
7372
);

test/classes/ConfigStorage/RelationTest.php

Lines changed: 19 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
use PHPUnit\Framework\Attributes\CoversClass;
1414
use PHPUnit\Framework\Attributes\DataProvider;
1515
use PHPUnit\Framework\Attributes\Group;
16-
use ReflectionClass;
16+
use ReflectionProperty;
1717

1818
use function implode;
1919

@@ -237,7 +237,7 @@ public function testFixPmaTablesNormal(): void
237237
$dummyDbi->addSelectDb('db_pma');
238238

239239
$_SESSION['relation'] = [];
240-
(new ReflectionClass(Relation::class))->getProperty('cache')->setValue([]);
240+
(new ReflectionProperty(Relation::class, 'cache'))->setValue(null, []);
241241

242242
$relation->fixPmaTables('db_pma', false);
243243

@@ -512,7 +512,7 @@ public function testFixPmaTablesNormalFixTables(): void
512512
$this->assertSame('', $GLOBALS['cfg']['Server']['pmadb']);
513513

514514
$_SESSION['relation'] = [];
515-
(new ReflectionClass(Relation::class))->getProperty('cache')->setValue([]);
515+
(new ReflectionProperty(Relation::class, 'cache'))->setValue(null, []);
516516

517517
$relation->fixPmaTables('db_pma', true);
518518
$this->assertArrayNotHasKey('message', $GLOBALS);
@@ -796,7 +796,7 @@ public function testFixPmaTablesNormalFixTablesWithCustomOverride(): void
796796
$this->assertSame('db_pma', $GLOBALS['cfg']['Server']['pmadb']);
797797

798798
$_SESSION['relation'] = [];
799-
(new ReflectionClass(Relation::class))->getProperty('cache')->setValue([]);
799+
(new ReflectionProperty(Relation::class, 'cache'))->setValue(null, []);
800800

801801
$dummyDbi->addSelectDb('db_pma');
802802
$dummyDbi->addSelectDb('db_pma');
@@ -875,7 +875,7 @@ public function testFixPmaTablesNormalFixTablesFails(): void
875875
$this->assertSame('', $GLOBALS['cfg']['Server']['pmadb']);
876876

877877
$_SESSION['relation'] = [];
878-
(new ReflectionClass(Relation::class))->getProperty('cache')->setValue([]);
878+
(new ReflectionProperty(Relation::class, 'cache'))->setValue(null, []);
879879

880880
$relation->fixPmaTables('db_pma', true);
881881

@@ -1437,7 +1437,7 @@ public function testInitRelationParamsCacheDefaultDbNameDbExistsServerZero(): vo
14371437
);
14381438

14391439
$_SESSION['relation'] = [];
1440-
(new ReflectionClass(Relation::class))->getProperty('cache')->setValue([]);
1440+
(new ReflectionProperty(Relation::class, 'cache'))->setValue(null, []);
14411441

14421442
$relation = new Relation($dbi);
14431443
$relation->initRelationParamsCache();
@@ -1503,7 +1503,7 @@ public function testInitRelationParamsCacheDefaultDbNameDbExistsFirstServer(): v
15031503
$dummyDbi->addResult('SELECT NULL FROM `pma__userconfig` LIMIT 0', [], ['NULL']);
15041504

15051505
$_SESSION['relation'] = [];
1506-
(new ReflectionClass(Relation::class))->getProperty('cache')->setValue([]);
1506+
(new ReflectionProperty(Relation::class, 'cache'))->setValue(null, []);
15071507

15081508
$dummyDbi->addSelectDb('phpmyadmin');
15091509
$relation = new Relation($dbi);
@@ -1595,7 +1595,7 @@ public function testInitRelationParamsCacheDefaultDbNameDbExistsFirstServerNotWo
15951595
$dummyDbi->addResult('SELECT NULL FROM `pma__userconfig` LIMIT 0', false);
15961596

15971597
$_SESSION['relation'] = [];
1598-
(new ReflectionClass(Relation::class))->getProperty('cache')->setValue([]);
1598+
(new ReflectionProperty(Relation::class, 'cache'))->setValue(null, []);
15991599

16001600
$dummyDbi->addSelectDb('phpmyadmin');
16011601
$relation = new Relation($dbi);
@@ -1688,7 +1688,7 @@ public function testInitRelationParamsCacheDefaultDbNameDbExistsFirstServerOverr
16881688
$dummyDbi->addSelectDb('PMA-storage');
16891689

16901690
$_SESSION['relation'] = [];
1691-
(new ReflectionClass(Relation::class))->getProperty('cache')->setValue([]);
1691+
(new ReflectionProperty(Relation::class, 'cache'))->setValue(null, []);
16921692

16931693
$relation = new Relation($dbi);
16941694
$relation->initRelationParamsCache();
@@ -1714,7 +1714,7 @@ public function testInitRelationParamsCacheDefaultDbNameDbExistsFirstServerOverr
17141714
$dummyDbi->addSelectDb('PMA-storage');
17151715
/** @psalm-suppress EmptyArrayAccess */
17161716
unset($_SESSION['relation'][$GLOBALS['server']]);
1717-
(new ReflectionClass(Relation::class))->getProperty('cache')->setValue([]);
1717+
(new ReflectionProperty(Relation::class, 'cache'))->setValue(null, []);
17181718
$relationData = $relation->getRelationParameters();
17191719
$dummyDbi->assertAllSelectsConsumed();
17201720

@@ -1793,7 +1793,7 @@ public function testInitRelationParamsDisabledTracking(): void
17931793
);
17941794

17951795
$_SESSION['relation'] = [];
1796-
(new ReflectionClass(Relation::class))->getProperty('cache')->setValue([]);
1796+
(new ReflectionProperty(Relation::class, 'cache'))->setValue(null, []);
17971797

17981798
$relation = new Relation($dbi);
17991799
$relation->initRelationParamsCache();
@@ -1822,7 +1822,7 @@ public function testInitRelationParamsDisabledTracking(): void
18221822
$dummyDbi->addSelectDb('PMA-storage');
18231823
/** @psalm-suppress EmptyArrayAccess */
18241824
unset($_SESSION['relation'][$GLOBALS['server']]);
1825-
(new ReflectionClass(Relation::class))->getProperty('cache')->setValue([]);
1825+
(new ReflectionProperty(Relation::class, 'cache'))->setValue(null, []);
18261826
$relationData = $relation->getRelationParameters();
18271827
$dummyDbi->assertAllSelectsConsumed();
18281828

@@ -1914,8 +1914,8 @@ public function testInitRelationParamsDisabledTrackingOthersExist(): void
19141914

19151915
$_SESSION['relation'] = [];
19161916
$_SESSION['tmpval'] = [];
1917-
(new ReflectionClass(Relation::class))->getProperty('cache')->setValue([]);
1918-
(new ReflectionClass(RecentFavoriteTable::class))->getProperty('instances')->setValue(null, []);
1917+
(new ReflectionProperty(Relation::class, 'cache'))->setValue(null, []);
1918+
(new ReflectionProperty(RecentFavoriteTable::class, 'instances'))->setValue(null, []);
19191919

19201920
$relation = new Relation($dbi);
19211921
$relation->initRelationParamsCache();
@@ -1998,7 +1998,7 @@ public function testArePmadbTablesDefinedAndArePmadbTablesAllDisabled(): void
19981998
$GLOBALS['dbi'] = $dbi;
19991999

20002000
$_SESSION['relation'] = [];
2001-
(new ReflectionClass(Relation::class))->getProperty('cache')->setValue([]);
2001+
(new ReflectionProperty(Relation::class, 'cache'))->setValue(null, []);
20022002

20032003
$relation = new Relation($dbi);
20042004

@@ -2135,7 +2135,8 @@ public function testRenameTable(array $params, array $queries): void
21352135

21362136
$GLOBALS['server'] = 1;
21372137
$relationParameters = RelationParameters::fromArray($params);
2138-
(new ReflectionClass(Relation::class))->getProperty('cache')->setValue(
2138+
(new ReflectionProperty(Relation::class, 'cache'))->setValue(
2139+
null,
21392140
[$GLOBALS['server'] => $relationParameters],
21402141
);
21412142

@@ -2205,7 +2206,8 @@ public function testRenameTableEscaping(): void
22052206
'pdf_pages' => 'pdf_pages',
22062207
'table_coords' => 'table`coords',
22072208
]);
2208-
(new ReflectionClass(Relation::class))->getProperty('cache')->setValue(
2209+
(new ReflectionProperty(Relation::class, 'cache'))->setValue(
2210+
null,
22092211
[$GLOBALS['server'] => $relationParameters],
22102212
);
22112213

test/classes/ConfigTest.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -673,7 +673,7 @@ public function testGetTempDir(): void
673673
$this->assertDirectoryExists($dir);
674674
$this->assertDirectoryIsWritable($dir);
675675

676-
(new ReflectionProperty(Config::class, 'tempDir'))->setValue([]);
676+
(new ReflectionProperty(Config::class, 'tempDir'))->setValue(null, []);
677677
$this->object->set('TempDir', $dir . DIRECTORY_SEPARATOR);
678678
// Check no double slash is here
679679
$this->assertEquals(

test/classes/Controllers/Console/Bookmark/AddControllerTest.php

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
use PhpMyAdmin\Tests\AbstractTestCase;
1313
use PhpMyAdmin\Tests\Stubs\ResponseRenderer;
1414
use PHPUnit\Framework\Attributes\CoversClass;
15-
use ReflectionClass;
15+
use ReflectionProperty;
1616

1717
#[CoversClass(AddController::class)]
1818
class AddControllerTest extends AbstractTestCase
@@ -37,7 +37,7 @@ public function testWithInvalidParams(): void
3737
public function testWithoutRelationParameters(): void
3838
{
3939
$GLOBALS['cfg']['Server']['user'] = 'user';
40-
(new ReflectionClass(Relation::class))->getProperty('cache')->setValue([]);
40+
(new ReflectionProperty(Relation::class, 'cache'))->setValue(null, []);
4141
$dbi = $this->createDatabaseInterface();
4242
$GLOBALS['dbi'] = $dbi;
4343
$response = new ResponseRenderer();
@@ -63,7 +63,8 @@ public function testWithValidParameters(): void
6363
'bookmarkwork' => true,
6464
'bookmark' => 'bookmark',
6565
]);
66-
(new ReflectionClass(Relation::class))->getProperty('cache')->setValue(
66+
(new ReflectionProperty(Relation::class, 'cache'))->setValue(
67+
null,
6768
[$GLOBALS['server'] => $relationParameters],
6869
);
6970

test/classes/Controllers/Export/Template/CreateControllerTest.php

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
use PhpMyAdmin\Tests\Stubs\DbiDummy;
1717
use PhpMyAdmin\Tests\Stubs\ResponseRenderer;
1818
use PHPUnit\Framework\Attributes\CoversClass;
19-
use ReflectionClass;
19+
use ReflectionProperty;
2020

2121
#[CoversClass(CreateController::class)]
2222
class CreateControllerTest extends AbstractTestCase
@@ -44,7 +44,8 @@ public function testCreate(): void
4444
'db' => 'db',
4545
'export_templates' => 'table',
4646
]);
47-
(new ReflectionClass(Relation::class))->getProperty('cache')->setValue(
47+
(new ReflectionProperty(Relation::class, 'cache'))->setValue(
48+
null,
4849
[$GLOBALS['server'] => $relationParameters],
4950
);
5051

test/classes/Controllers/Export/Template/LoadControllerTest.php

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
use PhpMyAdmin\Tests\Stubs\DbiDummy;
1616
use PhpMyAdmin\Tests\Stubs\ResponseRenderer;
1717
use PHPUnit\Framework\Attributes\CoversClass;
18-
use ReflectionClass;
18+
use ReflectionProperty;
1919

2020
#[CoversClass(LoadController::class)]
2121
class LoadControllerTest extends AbstractTestCase
@@ -43,7 +43,8 @@ public function testLoad(): void
4343
'db' => 'db',
4444
'export_templates' => 'table',
4545
]);
46-
(new ReflectionClass(Relation::class))->getProperty('cache')->setValue(
46+
(new ReflectionProperty(Relation::class, 'cache'))->setValue(
47+
null,
4748
[$GLOBALS['server'] => $relationParameters],
4849
);
4950

test/classes/Controllers/Table/RecentFavoriteControllerTest.php

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
use PHPUnit\Framework\Attributes\CoversClass;
1818
use PHPUnit\Framework\Attributes\PreserveGlobalState;
1919
use PHPUnit\Framework\Attributes\RunTestsInSeparateProcesses;
20-
use ReflectionClass;
20+
use ReflectionProperty;
2121
use Symfony\Component\DependencyInjection\ContainerBuilder;
2222

2323
#[CoversClass(RecentFavoriteController::class)]
@@ -44,7 +44,7 @@ public function testRecentFavoriteControllerWithValidDbAndTable(): void
4444
$GLOBALS['text_dir'] = 'ltr';
4545
$_REQUEST['db'] = 'test_db';
4646
$_REQUEST['table'] = 'test_table';
47-
(new ReflectionClass(Relation::class))->getProperty('cache')->setValue([]);
47+
(new ReflectionProperty(Relation::class, 'cache'))->setValue(null, []);
4848

4949
$_SESSION['tmpval'] = [];
5050
$_SESSION['tmpval']['recentTables'][2] = [['db' => 'test_db', 'table' => 'test_table']];
@@ -75,7 +75,7 @@ public function testRecentFavoriteControllerWithInvalidDbAndTable(): void
7575
$GLOBALS['text_dir'] = 'ltr';
7676
$_REQUEST['db'] = 'invalid_db';
7777
$_REQUEST['table'] = 'invalid_table';
78-
(new ReflectionClass(Relation::class))->getProperty('cache')->setValue([]);
78+
(new ReflectionProperty(Relation::class, 'cache'))->setValue(null, []);
7979

8080
$_SESSION['tmpval'] = [];
8181
$_SESSION['tmpval']['recentTables'][2] = [['db' => 'invalid_db', 'table' => 'invalid_table']];

0 commit comments

Comments
 (0)