From cee435fefd0054c56f2a3cac6b27852efe817de6 Mon Sep 17 00:00:00 2001 From: Christian Flothmann Date: Mon, 27 Feb 2017 14:57:41 +0100 Subject: [PATCH] do not register the test listener twice If the listener is already configured through the PHPUnit config, there is no need to also enable it explicitly in the test runner. --- src/Symfony/Bridge/PhpUnit/TextUI/TestRunner.php | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/src/Symfony/Bridge/PhpUnit/TextUI/TestRunner.php b/src/Symfony/Bridge/PhpUnit/TextUI/TestRunner.php index 16c5f078e6..9d76a0dfad 100644 --- a/src/Symfony/Bridge/PhpUnit/TextUI/TestRunner.php +++ b/src/Symfony/Bridge/PhpUnit/TextUI/TestRunner.php @@ -27,9 +27,16 @@ class TestRunner extends \PHPUnit_TextUI_TestRunner */ protected function handleConfiguration(array &$arguments) { - $arguments['listeners'] = isset($arguments['listeners']) ? $arguments['listeners'] : array(); - $arguments['listeners'][] = new SymfonyTestsListener(); + $listener = new SymfonyTestsListener(); - return parent::handleConfiguration($arguments); + $result = parent::handleConfiguration($arguments); + + $arguments['listeners'] = isset($arguments['listeners']) ? $arguments['listeners'] : array(); + + if (!array_filter($arguments['listeners'], function ($listener) { return $listener instanceof SymfonyTestsListener; })) { + $arguments['listeners'][] = $listener; + } + + return $result; } }