From c2c7ba82df194a0b42d57d47f21db725001433f3 Mon Sep 17 00:00:00 2001 From: Nicolas Grekas Date: Thu, 1 Aug 2019 14:16:51 +0200 Subject: [PATCH] Skip tests that fatal-error on PHP 7.4 because of missing parent classes --- .../Tests/CacheWarmer/ValidatorCacheWarmerTest.php | 5 +++++ .../Tests/Resource/ClassExistenceResourceTest.php | 9 +++++++++ .../Tests/Compiler/AutowirePassTest.php | 13 +++++++++++++ .../Tests/Compiler/ResolveBindingsPassTest.php | 5 +++++ .../Tests/Dumper/PhpDumperTest.php | 5 +++++ .../Tests/Loader/FileLoaderTest.php | 13 +++++++++++++ 6 files changed, 50 insertions(+) diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/CacheWarmer/ValidatorCacheWarmerTest.php b/src/Symfony/Bundle/FrameworkBundle/Tests/CacheWarmer/ValidatorCacheWarmerTest.php index 868bd83cf7e3..416f4b6123a3 100644 --- a/src/Symfony/Bundle/FrameworkBundle/Tests/CacheWarmer/ValidatorCacheWarmerTest.php +++ b/src/Symfony/Bundle/FrameworkBundle/Tests/CacheWarmer/ValidatorCacheWarmerTest.php @@ -11,6 +11,7 @@ namespace Symfony\Bundle\FrameworkBundle\Tests\CacheWarmer; +use PHPUnit\Framework\Warning; use Symfony\Bridge\PhpUnit\ForwardCompatTestTrait; use Symfony\Bundle\FrameworkBundle\CacheWarmer\ValidatorCacheWarmer; use Symfony\Bundle\FrameworkBundle\Tests\TestCase; @@ -26,6 +27,10 @@ class ValidatorCacheWarmerTest extends TestCase public function testWarmUp() { + if (\PHP_VERSION_ID >= 70400) { + throw new Warning('PHP 7.4 breaks this test, see https://bugs.php.net/78351.'); + } + $validatorBuilder = new ValidatorBuilder(); $validatorBuilder->addXmlMapping(__DIR__.'/../Fixtures/Validation/Resources/person.xml'); $validatorBuilder->addYamlMapping(__DIR__.'/../Fixtures/Validation/Resources/author.yml'); diff --git a/src/Symfony/Component/Config/Tests/Resource/ClassExistenceResourceTest.php b/src/Symfony/Component/Config/Tests/Resource/ClassExistenceResourceTest.php index 79bc64d69b9a..5612e7ca2463 100644 --- a/src/Symfony/Component/Config/Tests/Resource/ClassExistenceResourceTest.php +++ b/src/Symfony/Component/Config/Tests/Resource/ClassExistenceResourceTest.php @@ -12,6 +12,7 @@ namespace Symfony\Component\Config\Tests\Resource; use PHPUnit\Framework\TestCase; +use PHPUnit\Framework\Warning; use Symfony\Component\Config\Resource\ClassExistenceResource; use Symfony\Component\Config\Tests\Fixtures\BadParent; use Symfony\Component\Config\Tests\Fixtures\Resource\ConditionalClass; @@ -77,6 +78,10 @@ public function testExistsKo() public function testBadParentWithTimestamp() { + if (\PHP_VERSION_ID >= 70400) { + throw new Warning('PHP 7.4 breaks this test, see https://bugs.php.net/78351.'); + } + $res = new ClassExistenceResource(BadParent::class, false); $this->assertTrue($res->isFresh(time())); } @@ -87,6 +92,10 @@ public function testBadParentWithTimestamp() */ public function testBadParentWithNoTimestamp() { + if (\PHP_VERSION_ID >= 70400) { + throw new Warning('PHP 7.4 breaks this test, see https://bugs.php.net/78351.'); + } + $res = new ClassExistenceResource(BadParent::class, false); $res->isFresh(0); } diff --git a/src/Symfony/Component/DependencyInjection/Tests/Compiler/AutowirePassTest.php b/src/Symfony/Component/DependencyInjection/Tests/Compiler/AutowirePassTest.php index 31fa665ae7a8..85979f367e35 100644 --- a/src/Symfony/Component/DependencyInjection/Tests/Compiler/AutowirePassTest.php +++ b/src/Symfony/Component/DependencyInjection/Tests/Compiler/AutowirePassTest.php @@ -12,6 +12,7 @@ namespace Symfony\Component\DependencyInjection\Tests\Compiler; use PHPUnit\Framework\TestCase; +use PHPUnit\Framework\Warning; use Symfony\Component\Config\FileLocator; use Symfony\Component\DependencyInjection\Compiler\AutowirePass; use Symfony\Component\DependencyInjection\Compiler\AutowireRequiredMethodsPass; @@ -395,6 +396,10 @@ public function testClassNotFoundThrowsException() */ public function testParentClassNotFoundThrowsException() { + if (\PHP_VERSION_ID >= 70400) { + throw new Warning('PHP 7.4 breaks this test, see https://bugs.php.net/78351.'); + } + $container = new ContainerBuilder(); $aDefinition = $container->register('a', __NAMESPACE__.'\BadParentTypeHintedArgument'); @@ -707,6 +712,10 @@ public function getCreateResourceTests() public function testIgnoreServiceWithClassNotExisting() { + if (\PHP_VERSION_ID >= 70400) { + throw new Warning('PHP 7.4 breaks this test, see https://bugs.php.net/78351.'); + } + $container = new ContainerBuilder(); $container->register('class_not_exist', __NAMESPACE__.'\OptionalServiceClass'); @@ -917,6 +926,10 @@ public function testExceptionWhenAliasExists() */ public function testExceptionWhenAliasDoesNotExist() { + if (\PHP_VERSION_ID >= 70400) { + throw new Warning('PHP 7.4 breaks this test, see https://bugs.php.net/78351.'); + } + $container = new ContainerBuilder(); // multiple I instances... but no IInterface alias diff --git a/src/Symfony/Component/DependencyInjection/Tests/Compiler/ResolveBindingsPassTest.php b/src/Symfony/Component/DependencyInjection/Tests/Compiler/ResolveBindingsPassTest.php index 7bbecf6207f4..303e3abd4935 100644 --- a/src/Symfony/Component/DependencyInjection/Tests/Compiler/ResolveBindingsPassTest.php +++ b/src/Symfony/Component/DependencyInjection/Tests/Compiler/ResolveBindingsPassTest.php @@ -12,6 +12,7 @@ namespace Symfony\Component\DependencyInjection\Tests\Compiler; use PHPUnit\Framework\TestCase; +use PHPUnit\Framework\Warning; use Symfony\Component\DependencyInjection\Argument\BoundArgument; use Symfony\Component\DependencyInjection\Compiler\AutowireRequiredMethodsPass; use Symfony\Component\DependencyInjection\Compiler\ResolveBindingsPass; @@ -69,6 +70,10 @@ public function testUnusedBinding() */ public function testMissingParent() { + if (\PHP_VERSION_ID >= 70400) { + throw new Warning('PHP 7.4 breaks this test, see https://bugs.php.net/78351.'); + } + $container = new ContainerBuilder(); $definition = $container->register(ParentNotExists::class, ParentNotExists::class); diff --git a/src/Symfony/Component/DependencyInjection/Tests/Dumper/PhpDumperTest.php b/src/Symfony/Component/DependencyInjection/Tests/Dumper/PhpDumperTest.php index b4e361077308..6a5cff1089fb 100644 --- a/src/Symfony/Component/DependencyInjection/Tests/Dumper/PhpDumperTest.php +++ b/src/Symfony/Component/DependencyInjection/Tests/Dumper/PhpDumperTest.php @@ -12,6 +12,7 @@ namespace Symfony\Component\DependencyInjection\Tests\Dumper; use PHPUnit\Framework\TestCase; +use PHPUnit\Framework\Warning; use Psr\Container\ContainerInterface; use Symfony\Bridge\PhpUnit\ForwardCompatTestTrait; use Symfony\Component\Config\FileLocator; @@ -906,6 +907,10 @@ public function testInlineSelfRef() public function testHotPathOptimizations() { + if (\PHP_VERSION_ID >= 70400) { + throw new Warning('PHP 7.4 breaks this test, see https://bugs.php.net/78351.'); + } + $container = include self::$fixturesPath.'/containers/container_inline_requires.php'; $container->setParameter('inline_requires', true); $container->compile(); diff --git a/src/Symfony/Component/DependencyInjection/Tests/Loader/FileLoaderTest.php b/src/Symfony/Component/DependencyInjection/Tests/Loader/FileLoaderTest.php index ee102c75bbbc..8493642b4c84 100644 --- a/src/Symfony/Component/DependencyInjection/Tests/Loader/FileLoaderTest.php +++ b/src/Symfony/Component/DependencyInjection/Tests/Loader/FileLoaderTest.php @@ -12,6 +12,7 @@ namespace Symfony\Component\DependencyInjection\Tests\Loader; use PHPUnit\Framework\TestCase; +use PHPUnit\Framework\Warning; use Psr\Container\ContainerInterface as PsrContainerInterface; use Symfony\Bridge\PhpUnit\ForwardCompatTestTrait; use Symfony\Component\Config\FileLocator; @@ -112,6 +113,10 @@ public function testRegisterClasses() public function testRegisterClassesWithExclude() { + if (\PHP_VERSION_ID >= 70400) { + throw new Warning('PHP 7.4 breaks this test, see https://bugs.php.net/78351.'); + } + $container = new ContainerBuilder(); $container->setParameter('other_dir', 'OtherDir'); $loader = new TestFileLoader($container, new FileLocator(self::$fixturesPath.'/Fixtures')); @@ -141,6 +146,10 @@ public function testRegisterClassesWithExclude() public function testNestedRegisterClasses() { + if (\PHP_VERSION_ID >= 70400) { + throw new Warning('PHP 7.4 breaks this test, see https://bugs.php.net/78351.'); + } + $container = new ContainerBuilder(); $loader = new TestFileLoader($container, new FileLocator(self::$fixturesPath.'/Fixtures')); @@ -169,6 +178,10 @@ public function testNestedRegisterClasses() public function testMissingParentClass() { + if (\PHP_VERSION_ID >= 70400) { + throw new Warning('PHP 7.4 breaks this test, see https://bugs.php.net/78351.'); + } + $container = new ContainerBuilder(); $container->setParameter('bad_classes_dir', 'BadClasses'); $loader = new TestFileLoader($container, new FileLocator(self::$fixturesPath.'/Fixtures'));