diff --git a/typo3/sysext/extbase/Tests/Unit/Reflection/ReflectionServiceTest.php b/typo3/sysext/extbase/Tests/Unit/Reflection/ReflectionServiceTest.php index 6de22336d5ec0930fc6b9f54a5c00c2e81891290..d406e68f80afa70b6957928cfa16080684f46917 100644 --- a/typo3/sysext/extbase/Tests/Unit/Reflection/ReflectionServiceTest.php +++ b/typo3/sysext/extbase/Tests/Unit/Reflection/ReflectionServiceTest.php @@ -94,19 +94,4 @@ class ReflectionServiceTest extends UnitTestCase self::assertInstanceOf(ReflectionService::class, $reflectionService); self::assertInstanceOf(ClassSchema::class, $reflectionService->getClassSchema($class)); } - - /** - * @test - */ - public function reflectionServiceIsResetDuringWakeUp(): void - { - $insecureString = file_get_contents(__DIR__ . '/Fixture/InsecureSerializedReflectionService.txt'); - $reflectionService = unserialize($insecureString); - - $reflectionClass = new \ReflectionClass($reflectionService); - $classSchemaProperty = $reflectionClass->getProperty('classSchemata'); - $classSchemaProperty->setAccessible(true); - - self::assertSame([], $classSchemaProperty->getValue($reflectionService)); - } } diff --git a/typo3/sysext/extbase/Tests/Unit/Reflection/Fixture/InsecureSerializedReflectionService.txt b/typo3/sysext/extbase/Tests/UnitDeprecated/Reflection/Fixture/InsecureSerializedReflectionService.txt similarity index 100% rename from typo3/sysext/extbase/Tests/Unit/Reflection/Fixture/InsecureSerializedReflectionService.txt rename to typo3/sysext/extbase/Tests/UnitDeprecated/Reflection/Fixture/InsecureSerializedReflectionService.txt diff --git a/typo3/sysext/extbase/Tests/UnitDeprecated/Reflection/ReflectionServiceTest.php b/typo3/sysext/extbase/Tests/UnitDeprecated/Reflection/ReflectionServiceTest.php new file mode 100644 index 0000000000000000000000000000000000000000..45c6ee165fdce6a6457b48303561bd217caf2c3d --- /dev/null +++ b/typo3/sysext/extbase/Tests/UnitDeprecated/Reflection/ReflectionServiceTest.php @@ -0,0 +1,41 @@ +<?php + +declare(strict_types=1); + +/* + * This file is part of the TYPO3 CMS project. + * + * It is free software; you can redistribute it and/or modify it under + * the terms of the GNU General Public License, either version 2 + * of the License, or any later version. + * + * For the full copyright and license information, please read the + * LICENSE.txt file that was distributed with this source code. + * + * The TYPO3 project - inspiring people to share! + */ + +namespace TYPO3\CMS\Extbase\Tests\UnitDeprecated\Reflection; + +use TYPO3\TestingFramework\Core\Unit\UnitTestCase; + +class ReflectionServiceTest extends UnitTestCase +{ + /** + * @test + * + * Note: Starting with PHP8.2 unserializing dynamic properties (undefined properties) emits a deprecation + * warning, which fails in normal tests. This moved here to avoid failing tests. + */ + public function reflectionServiceIsResetDuringWakeUp(): void + { + $insecureString = file_get_contents(__DIR__ . '/Fixture/InsecureSerializedReflectionService.txt'); + $reflectionService = unserialize($insecureString); + + $reflectionClass = new \ReflectionClass($reflectionService); + $classSchemaProperty = $reflectionClass->getProperty('classSchemata'); + $classSchemaProperty->setAccessible(true); + + self::assertSame([], $classSchemaProperty->getValue($reflectionService)); + } +}