public function TraceableEventDispatcherTest::testAddRemoveSubscriber

File

drupal/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/Debug/TraceableEventDispatcherTest.php, line 75

Class

TraceableEventDispatcherTest

Namespace

Symfony\Component\HttpKernel\Tests\Debug

Code

public function testAddRemoveSubscriber() {
  $dispatcher = new EventDispatcher();
  $tdispatcher = new TraceableEventDispatcher($dispatcher, new Stopwatch());
  $subscriber = new EventSubscriber();
  $tdispatcher
    ->addSubscriber($subscriber);
  $listeners = $dispatcher
    ->getListeners('foo');
  $this
    ->assertCount(1, $listeners);
  $this
    ->assertSame(array(
    $subscriber,
    'call',
  ), $listeners[0]);
  $tdispatcher
    ->removeSubscriber($subscriber);
  $this
    ->assertCount(0, $dispatcher
    ->getListeners('foo'));
}