@author Bernhard Schussek <bschussek@gmail.com>
Expanded class hierarchy of ImmutableEventDispatcherTest
class ImmutableEventDispatcherTest extends \PHPUnit_Framework_TestCase {
  /**
   * @var \PHPUnit_Framework_MockObject_MockObject
   */
  private $innerDispatcher;
  /**
   * @var ImmutableEventDispatcher
   */
  private $dispatcher;
  protected function setUp() {
    $this->innerDispatcher = $this
      ->getMock('Symfony\\Component\\EventDispatcher\\EventDispatcherInterface');
    $this->dispatcher = new ImmutableEventDispatcher($this->innerDispatcher);
  }
  public function testDispatchDelegates() {
    $event = new Event();
    $this->innerDispatcher
      ->expects($this
      ->once())
      ->method('dispatch')
      ->with('event', $event)
      ->will($this
      ->returnValue('result'));
    $this
      ->assertSame('result', $this->dispatcher
      ->dispatch('event', $event));
  }
  public function testGetListenersDelegates() {
    $this->innerDispatcher
      ->expects($this
      ->once())
      ->method('getListeners')
      ->with('event')
      ->will($this
      ->returnValue('result'));
    $this
      ->assertSame('result', $this->dispatcher
      ->getListeners('event'));
  }
  public function testHasListenersDelegates() {
    $this->innerDispatcher
      ->expects($this
      ->once())
      ->method('hasListeners')
      ->with('event')
      ->will($this
      ->returnValue('result'));
    $this
      ->assertSame('result', $this->dispatcher
      ->hasListeners('event'));
  }
  /**
   * @expectedException \BadMethodCallException
   */
  public function testAddListenerDisallowed() {
    $this->dispatcher
      ->addListener('event', function () {
      return 'foo';
    });
  }
  /**
   * @expectedException \BadMethodCallException
   */
  public function testAddSubscriberDisallowed() {
    $subscriber = $this
      ->getMock('Symfony\\Component\\EventDispatcher\\EventSubscriberInterface');
    $this->dispatcher
      ->addSubscriber($subscriber);
  }
  /**
   * @expectedException \BadMethodCallException
   */
  public function testRemoveListenerDisallowed() {
    $this->dispatcher
      ->removeListener('event', function () {
      return 'foo';
    });
  }
  /**
   * @expectedException \BadMethodCallException
   */
  public function testRemoveSubscriberDisallowed() {
    $subscriber = $this
      ->getMock('Symfony\\Component\\EventDispatcher\\EventSubscriberInterface');
    $this->dispatcher
      ->removeSubscriber($subscriber);
  }
}| 
            Name | 
                  Modifiers | Type | Description | Overrides | 
|---|---|---|---|---|
| 
            ImmutableEventDispatcherTest:: | 
                  private | property | ||
| 
            ImmutableEventDispatcherTest:: | 
                  private | property | ||
| 
            ImmutableEventDispatcherTest:: | 
                  protected | function | ||
| 
            ImmutableEventDispatcherTest:: | 
                  public | function | @expectedException \BadMethodCallException | |
| 
            ImmutableEventDispatcherTest:: | 
                  public | function | @expectedException \BadMethodCallException | |
| 
            ImmutableEventDispatcherTest:: | 
                  public | function | ||
| 
            ImmutableEventDispatcherTest:: | 
                  public | function | ||
| 
            ImmutableEventDispatcherTest:: | 
                  public | function | ||
| 
            ImmutableEventDispatcherTest:: | 
                  public | function | @expectedException \BadMethodCallException | |
| 
            ImmutableEventDispatcherTest:: | 
                  public | function | @expectedException \BadMethodCallException |