3 namespace Codeception\PHPUnit;
5 use Symfony\Component\EventDispatcher\Event;
6 use Symfony\Component\EventDispatcher\EventDispatcher;
7 use Symfony\Component\EventDispatcher\Debug\TraceableEventDispatcherInterface;
9 trait DispatcherWrapper
12 * Compatibility wrapper for dispatcher change between Symfony 4 and 5
13 * @param EventDispatcher $dispatcher
14 * @param string $eventType
15 * @param Event $eventObject
17 protected function dispatch(EventDispatcher $dispatcher, $eventType, Event $eventObject)
19 //TraceableEventDispatcherInterface was introduced in symfony/event-dispatcher 2.5 and removed in 5.0
20 if (!interface_exists(TraceableEventDispatcherInterface::class)) {
22 $dispatcher->dispatch($eventObject, $eventType);
25 $dispatcher->dispatch($eventType, $eventObject);