public function ContainerAwareEventDispatcherTest::testRemoveService in Drupal 8        
                          
                  
                        Same name and namespace in other branches
- 9 core/tests/Drupal/Tests/Component/EventDispatcher/ContainerAwareEventDispatcherTest.php \Drupal\Tests\Component\EventDispatcher\ContainerAwareEventDispatcherTest::testRemoveService()
 - 10 core/tests/Drupal/Tests/Component/EventDispatcher/ContainerAwareEventDispatcherTest.php \Drupal\Tests\Component\EventDispatcher\ContainerAwareEventDispatcherTest::testRemoveService()
 
 
File
 
   - core/tests/Drupal/Tests/Component/EventDispatcher/ContainerAwareEventDispatcherTest.php, line 163
 
  
  Class
  
  - ContainerAwareEventDispatcherTest 
 
  - Unit tests for the ContainerAwareEventDispatcher.
 
  Namespace
  Drupal\Tests\Component\EventDispatcher
Code
public function testRemoveService() {
  $container = new ContainerBuilder();
  $container
    ->register('listener_service', TestEventListener::class);
  $container
    ->register('other_listener_service', TestEventListener::class);
  $listeners = [
    'test_event' => [
      0 => [
        [
          'service' => [
            'listener_service',
            'preFoo',
          ],
        ],
        [
          'service' => [
            'other_listener_service',
            'preFoo',
          ],
        ],
      ],
    ],
  ];
  $dispatcher = new ContainerAwareEventDispatcher($container, $listeners);
  $listenerService = $container
    ->get('listener_service');
  $dispatcher
    ->removeListener('test_event', [
    $listenerService,
    'preFoo',
  ]);
  
  $this
    ->assertFalse($container
    ->initialized('other_listener_service'));
  $dispatcher
    ->dispatch('test_event');
  $this
    ->assertFalse($listenerService->preFooInvoked);
  $otherService = $container
    ->get('other_listener_service');
  $this
    ->assertTrue($otherService->preFooInvoked);
}