minor #33069 Replace warning by isolated test (jderusse)
This PR was merged into the 3.4 branch.
Discussion
----------
Replace warning by isolated test
| Q | A
| ------------- | ---
| Branch? | 3.4
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #32844
| License | MIT
| Doc PR | symfony/symfony-docs#... <!-- required for new features -->
Failing test introduced in PHP 7.4 (fatal error) were skiped with a warning exception.
This PR un tests is isolated process in order to correctly flag the test without stoping the test suite.
I kept a comment to the original bug in order to easily remove theme
Commits
-------
9c45a8e093
Replace warning by isolated test
This commit is contained in:
commit
7afc9352f3
|
@ -11,7 +11,6 @@
|
||||||
|
|
||||||
namespace Symfony\Bundle\FrameworkBundle\Tests\CacheWarmer;
|
namespace Symfony\Bundle\FrameworkBundle\Tests\CacheWarmer;
|
||||||
|
|
||||||
use PHPUnit\Framework\Warning;
|
|
||||||
use Symfony\Bundle\FrameworkBundle\CacheWarmer\ValidatorCacheWarmer;
|
use Symfony\Bundle\FrameworkBundle\CacheWarmer\ValidatorCacheWarmer;
|
||||||
use Symfony\Bundle\FrameworkBundle\Tests\TestCase;
|
use Symfony\Bundle\FrameworkBundle\Tests\TestCase;
|
||||||
use Symfony\Component\Cache\Adapter\ArrayAdapter;
|
use Symfony\Component\Cache\Adapter\ArrayAdapter;
|
||||||
|
@ -22,12 +21,11 @@ use Symfony\Component\Validator\ValidatorBuilder;
|
||||||
|
|
||||||
class ValidatorCacheWarmerTest extends TestCase
|
class ValidatorCacheWarmerTest extends TestCase
|
||||||
{
|
{
|
||||||
|
/**
|
||||||
|
* @runInSeparateProcess https://github.com/symfony/symfony/issues/32995
|
||||||
|
*/
|
||||||
public function testWarmUp()
|
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 = new ValidatorBuilder();
|
||||||
$validatorBuilder->addXmlMapping(__DIR__.'/../Fixtures/Validation/Resources/person.xml');
|
$validatorBuilder->addXmlMapping(__DIR__.'/../Fixtures/Validation/Resources/person.xml');
|
||||||
$validatorBuilder->addYamlMapping(__DIR__.'/../Fixtures/Validation/Resources/author.yml');
|
$validatorBuilder->addYamlMapping(__DIR__.'/../Fixtures/Validation/Resources/author.yml');
|
||||||
|
|
|
@ -12,7 +12,6 @@
|
||||||
namespace Symfony\Component\Config\Tests\Resource;
|
namespace Symfony\Component\Config\Tests\Resource;
|
||||||
|
|
||||||
use PHPUnit\Framework\TestCase;
|
use PHPUnit\Framework\TestCase;
|
||||||
use PHPUnit\Framework\Warning;
|
|
||||||
use Symfony\Component\Config\Resource\ClassExistenceResource;
|
use Symfony\Component\Config\Resource\ClassExistenceResource;
|
||||||
use Symfony\Component\Config\Tests\Fixtures\BadParent;
|
use Symfony\Component\Config\Tests\Fixtures\BadParent;
|
||||||
use Symfony\Component\Config\Tests\Fixtures\Resource\ConditionalClass;
|
use Symfony\Component\Config\Tests\Fixtures\Resource\ConditionalClass;
|
||||||
|
@ -76,23 +75,22 @@ EOF
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @runInSeparateProcess https://github.com/symfony/symfony/issues/32995
|
||||||
|
*/
|
||||||
public function testBadParentWithTimestamp()
|
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);
|
$res = new ClassExistenceResource(BadParent::class, false);
|
||||||
$this->assertTrue($res->isFresh(time()));
|
$this->assertTrue($res->isFresh(time()));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @runInSeparateProcess https://github.com/symfony/symfony/issues/32995
|
||||||
|
*/
|
||||||
public function testBadParentWithNoTimestamp()
|
public function testBadParentWithNoTimestamp()
|
||||||
{
|
{
|
||||||
$this->expectException('ReflectionException');
|
$this->expectException('ReflectionException');
|
||||||
$this->expectExceptionMessage('Class Symfony\Component\Config\Tests\Fixtures\MissingParent not found');
|
$this->expectExceptionMessage('Class Symfony\Component\Config\Tests\Fixtures\MissingParent not found');
|
||||||
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 = new ClassExistenceResource(BadParent::class, false);
|
||||||
$res->isFresh(0);
|
$res->isFresh(0);
|
||||||
|
|
|
@ -12,7 +12,6 @@
|
||||||
namespace Symfony\Component\DependencyInjection\Tests\Compiler;
|
namespace Symfony\Component\DependencyInjection\Tests\Compiler;
|
||||||
|
|
||||||
use PHPUnit\Framework\TestCase;
|
use PHPUnit\Framework\TestCase;
|
||||||
use PHPUnit\Framework\Warning;
|
|
||||||
use Symfony\Component\Config\FileLocator;
|
use Symfony\Component\Config\FileLocator;
|
||||||
use Symfony\Component\DependencyInjection\Compiler\AutowirePass;
|
use Symfony\Component\DependencyInjection\Compiler\AutowirePass;
|
||||||
use Symfony\Component\DependencyInjection\Compiler\AutowireRequiredMethodsPass;
|
use Symfony\Component\DependencyInjection\Compiler\AutowireRequiredMethodsPass;
|
||||||
|
@ -378,13 +377,13 @@ class AutowirePassTest extends TestCase
|
||||||
$pass->process($container);
|
$pass->process($container);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @runInSeparateProcess https://github.com/symfony/symfony/issues/32995
|
||||||
|
*/
|
||||||
public function testParentClassNotFoundThrowsException()
|
public function testParentClassNotFoundThrowsException()
|
||||||
{
|
{
|
||||||
$this->expectException('Symfony\Component\DependencyInjection\Exception\AutowiringFailedException');
|
$this->expectException('Symfony\Component\DependencyInjection\Exception\AutowiringFailedException');
|
||||||
$this->expectExceptionMessage('Cannot autowire service "a": argument "$r" of method "Symfony\Component\DependencyInjection\Tests\Compiler\BadParentTypeHintedArgument::__construct()" has type "Symfony\Component\DependencyInjection\Tests\Compiler\OptionalServiceClass" but this class is missing a parent class (Class Symfony\Bug\NotExistClass not found).');
|
$this->expectExceptionMessage('Cannot autowire service "a": argument "$r" of method "Symfony\Component\DependencyInjection\Tests\Compiler\BadParentTypeHintedArgument::__construct()" has type "Symfony\Component\DependencyInjection\Tests\Compiler\OptionalServiceClass" but this class is missing a parent class (Class Symfony\Bug\NotExistClass not found).');
|
||||||
if (\PHP_VERSION_ID >= 70400) {
|
|
||||||
throw new Warning('PHP 7.4 breaks this test, see https://bugs.php.net/78351.');
|
|
||||||
}
|
|
||||||
|
|
||||||
$container = new ContainerBuilder();
|
$container = new ContainerBuilder();
|
||||||
|
|
||||||
|
@ -692,12 +691,11 @@ class AutowirePassTest extends TestCase
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @runInSeparateProcess https://github.com/symfony/symfony/issues/32995
|
||||||
|
*/
|
||||||
public function testIgnoreServiceWithClassNotExisting()
|
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 = new ContainerBuilder();
|
||||||
|
|
||||||
$container->register('class_not_exist', __NAMESPACE__.'\OptionalServiceClass');
|
$container->register('class_not_exist', __NAMESPACE__.'\OptionalServiceClass');
|
||||||
|
@ -894,13 +892,13 @@ class AutowirePassTest extends TestCase
|
||||||
$pass->process($container);
|
$pass->process($container);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @runInSeparateProcess https://github.com/symfony/symfony/issues/32995
|
||||||
|
*/
|
||||||
public function testExceptionWhenAliasDoesNotExist()
|
public function testExceptionWhenAliasDoesNotExist()
|
||||||
{
|
{
|
||||||
$this->expectException('Symfony\Component\DependencyInjection\Exception\AutowiringFailedException');
|
$this->expectException('Symfony\Component\DependencyInjection\Exception\AutowiringFailedException');
|
||||||
$this->expectExceptionMessage('Cannot autowire service "j": argument "$i" of method "Symfony\Component\DependencyInjection\Tests\Compiler\J::__construct()" references class "Symfony\Component\DependencyInjection\Tests\Compiler\I" but no such service exists. You should maybe alias this class to one of these existing services: "i", "i2".');
|
$this->expectExceptionMessage('Cannot autowire service "j": argument "$i" of method "Symfony\Component\DependencyInjection\Tests\Compiler\J::__construct()" references class "Symfony\Component\DependencyInjection\Tests\Compiler\I" but no such service exists. You should maybe alias this class to one of these existing services: "i", "i2".');
|
||||||
if (\PHP_VERSION_ID >= 70400) {
|
|
||||||
throw new Warning('PHP 7.4 breaks this test, see https://bugs.php.net/78351.');
|
|
||||||
}
|
|
||||||
|
|
||||||
$container = new ContainerBuilder();
|
$container = new ContainerBuilder();
|
||||||
|
|
||||||
|
|
|
@ -12,7 +12,6 @@
|
||||||
namespace Symfony\Component\DependencyInjection\Tests\Compiler;
|
namespace Symfony\Component\DependencyInjection\Tests\Compiler;
|
||||||
|
|
||||||
use PHPUnit\Framework\TestCase;
|
use PHPUnit\Framework\TestCase;
|
||||||
use PHPUnit\Framework\Warning;
|
|
||||||
use Symfony\Component\DependencyInjection\Argument\BoundArgument;
|
use Symfony\Component\DependencyInjection\Argument\BoundArgument;
|
||||||
use Symfony\Component\DependencyInjection\Compiler\AutowireRequiredMethodsPass;
|
use Symfony\Component\DependencyInjection\Compiler\AutowireRequiredMethodsPass;
|
||||||
use Symfony\Component\DependencyInjection\Compiler\ResolveBindingsPass;
|
use Symfony\Component\DependencyInjection\Compiler\ResolveBindingsPass;
|
||||||
|
@ -62,13 +61,13 @@ class ResolveBindingsPassTest extends TestCase
|
||||||
$pass->process($container);
|
$pass->process($container);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @runInSeparateProcess https://github.com/symfony/symfony/issues/32995
|
||||||
|
*/
|
||||||
public function testMissingParent()
|
public function testMissingParent()
|
||||||
{
|
{
|
||||||
$this->expectException('Symfony\Component\DependencyInjection\Exception\InvalidArgumentException');
|
$this->expectException('Symfony\Component\DependencyInjection\Exception\InvalidArgumentException');
|
||||||
$this->expectExceptionMessageRegExp('/Unused binding "\$quz" in service [\s\S]+/');
|
$this->expectExceptionMessageRegExp('/Unused binding "\$quz" in service [\s\S]+/');
|
||||||
if (\PHP_VERSION_ID >= 70400) {
|
|
||||||
throw new Warning('PHP 7.4 breaks this test, see https://bugs.php.net/78351.');
|
|
||||||
}
|
|
||||||
|
|
||||||
$container = new ContainerBuilder();
|
$container = new ContainerBuilder();
|
||||||
|
|
||||||
|
|
|
@ -12,7 +12,6 @@
|
||||||
namespace Symfony\Component\DependencyInjection\Tests\Dumper;
|
namespace Symfony\Component\DependencyInjection\Tests\Dumper;
|
||||||
|
|
||||||
use PHPUnit\Framework\TestCase;
|
use PHPUnit\Framework\TestCase;
|
||||||
use PHPUnit\Framework\Warning;
|
|
||||||
use Psr\Container\ContainerInterface;
|
use Psr\Container\ContainerInterface;
|
||||||
use Symfony\Component\Config\FileLocator;
|
use Symfony\Component\Config\FileLocator;
|
||||||
use Symfony\Component\DependencyInjection\Argument\IteratorArgument;
|
use Symfony\Component\DependencyInjection\Argument\IteratorArgument;
|
||||||
|
@ -894,12 +893,11 @@ class PhpDumperTest extends TestCase
|
||||||
$this->assertStringEqualsFile(self::$fixturesPath.'/php/services_inline_self_ref.php', $dumper->dump(['class' => 'Symfony_DI_PhpDumper_Test_Inline_Self_Ref']));
|
$this->assertStringEqualsFile(self::$fixturesPath.'/php/services_inline_self_ref.php', $dumper->dump(['class' => 'Symfony_DI_PhpDumper_Test_Inline_Self_Ref']));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @runInSeparateProcess https://github.com/symfony/symfony/issues/32995
|
||||||
|
*/
|
||||||
public function testHotPathOptimizations()
|
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 = include self::$fixturesPath.'/containers/container_inline_requires.php';
|
||||||
$container->setParameter('inline_requires', true);
|
$container->setParameter('inline_requires', true);
|
||||||
$container->compile();
|
$container->compile();
|
||||||
|
|
|
@ -12,7 +12,6 @@
|
||||||
namespace Symfony\Component\DependencyInjection\Tests\Loader;
|
namespace Symfony\Component\DependencyInjection\Tests\Loader;
|
||||||
|
|
||||||
use PHPUnit\Framework\TestCase;
|
use PHPUnit\Framework\TestCase;
|
||||||
use PHPUnit\Framework\Warning;
|
|
||||||
use Psr\Container\ContainerInterface as PsrContainerInterface;
|
use Psr\Container\ContainerInterface as PsrContainerInterface;
|
||||||
use Symfony\Component\Config\FileLocator;
|
use Symfony\Component\Config\FileLocator;
|
||||||
use Symfony\Component\Config\Loader\LoaderResolver;
|
use Symfony\Component\Config\Loader\LoaderResolver;
|
||||||
|
@ -108,12 +107,11 @@ class FileLoaderTest extends TestCase
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @runInSeparateProcess https://github.com/symfony/symfony/issues/32995
|
||||||
|
*/
|
||||||
public function testRegisterClassesWithExclude()
|
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 = new ContainerBuilder();
|
||||||
$container->setParameter('other_dir', 'OtherDir');
|
$container->setParameter('other_dir', 'OtherDir');
|
||||||
$loader = new TestFileLoader($container, new FileLocator(self::$fixturesPath.'/Fixtures'));
|
$loader = new TestFileLoader($container, new FileLocator(self::$fixturesPath.'/Fixtures'));
|
||||||
|
@ -141,12 +139,11 @@ class FileLoaderTest extends TestCase
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @runInSeparateProcess https://github.com/symfony/symfony/issues/32995
|
||||||
|
*/
|
||||||
public function testNestedRegisterClasses()
|
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();
|
$container = new ContainerBuilder();
|
||||||
$loader = new TestFileLoader($container, new FileLocator(self::$fixturesPath.'/Fixtures'));
|
$loader = new TestFileLoader($container, new FileLocator(self::$fixturesPath.'/Fixtures'));
|
||||||
|
|
||||||
|
@ -173,12 +170,11 @@ class FileLoaderTest extends TestCase
|
||||||
$this->assertFalse($alias->isPrivate());
|
$this->assertFalse($alias->isPrivate());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @runInSeparateProcess https://github.com/symfony/symfony/issues/32995
|
||||||
|
*/
|
||||||
public function testMissingParentClass()
|
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 = new ContainerBuilder();
|
||||||
$container->setParameter('bad_classes_dir', 'BadClasses');
|
$container->setParameter('bad_classes_dir', 'BadClasses');
|
||||||
$loader = new TestFileLoader($container, new FileLocator(self::$fixturesPath.'/Fixtures'));
|
$loader = new TestFileLoader($container, new FileLocator(self::$fixturesPath.'/Fixtures'));
|
||||||
|
|
Reference in New Issue