Chris@0: Chris@0: * Chris@0: * For the full copyright and license information, please view the LICENSE Chris@0: * file that was distributed with this source code. Chris@0: */ Chris@0: Chris@0: namespace Symfony\Bridge\PhpUnit\TextUI; Chris@0: Chris@14: use PHPUnit\TextUI\TestRunner as BaseRunner; Chris@0: use Symfony\Bridge\PhpUnit\SymfonyTestsListener; Chris@0: Chris@14: if (class_exists('PHPUnit_Runner_Version') && version_compare(\PHPUnit_Runner_Version::id(), '6.0.0', '<')) { Chris@14: class_alias('Symfony\Bridge\PhpUnit\Legacy\TestRunner', 'Symfony\Bridge\PhpUnit\TextUI\TestRunner'); Chris@14: } else { Chris@0: /** Chris@0: * {@inheritdoc} Chris@14: * Chris@14: * @internal Chris@0: */ Chris@14: class TestRunner extends BaseRunner Chris@0: { Chris@14: /** Chris@14: * {@inheritdoc} Chris@14: */ Chris@14: protected function handleConfiguration(array &$arguments) Chris@14: { Chris@14: $listener = new SymfonyTestsListener(); Chris@0: Chris@14: $result = parent::handleConfiguration($arguments); Chris@0: Chris@14: $arguments['listeners'] = isset($arguments['listeners']) ? $arguments['listeners'] : array(); Chris@0: Chris@14: $registeredLocally = false; Chris@0: Chris@14: foreach ($arguments['listeners'] as $registeredListener) { Chris@14: if ($registeredListener instanceof SymfonyTestsListener) { Chris@14: $registeredListener->globalListenerDisabled(); Chris@14: $registeredLocally = true; Chris@14: break; Chris@14: } Chris@0: } Chris@14: Chris@14: if (!$registeredLocally) { Chris@14: $arguments['listeners'][] = $listener; Chris@14: } Chris@14: Chris@14: return $result; Chris@0: } Chris@0: } Chris@0: }