From 81248bc8556ab5cf2306cd74df73b8a4c0820663 Mon Sep 17 00:00:00 2001 From: Nicolas Grekas Date: Sat, 9 Dec 2017 23:27:15 +0100 Subject: [PATCH] [HttpKernel] detect deprecations thrown by container initialization during tests --- src/Symfony/Component/HttpKernel/Kernel.php | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/Symfony/Component/HttpKernel/Kernel.php b/src/Symfony/Component/HttpKernel/Kernel.php index 42d176612e64e..b777146a29984 100644 --- a/src/Symfony/Component/HttpKernel/Kernel.php +++ b/src/Symfony/Component/HttpKernel/Kernel.php @@ -536,7 +536,8 @@ protected function initializeContainer() if (!$cache->isFresh()) { if ($this->debug) { $collectedLogs = array(); - $previousHandler = set_error_handler(function ($type, $message, $file, $line) use (&$collectedLogs, &$previousHandler) { + $previousHandler = defined('PHPUNIT_COMPOSER_INSTALL'); + $previousHandler = $previousHandler ?: set_error_handler(function ($type, $message, $file, $line) use (&$collectedLogs, &$previousHandler) { if (E_USER_DEPRECATED !== $type && E_DEPRECATED !== $type) { return $previousHandler ? $previousHandler($type, $message, $file, $line) : false; } @@ -572,7 +573,7 @@ protected function initializeContainer() $container = $this->buildContainer(); $container->compile(); } finally { - if ($this->debug) { + if ($this->debug && true !== $previousHandler) { restore_error_handler(); file_put_contents($this->getCacheDir().'/'.$class.'Deprecations.log', serialize(array_values($collectedLogs)));