Open Journal Systems  3.3.0
vendor/symfony/event-dispatcher/Tests/GenericEventTest.php
1 <?php
2 
3 /*
4  * This file is part of the Symfony package.
5  *
6  * (c) Fabien Potencier <fabien@symfony.com>
7  *
8  * For the full copyright and license information, please view the LICENSE
9  * file that was distributed with this source code.
10  */
11 
13 
14 use PHPUnit\Framework\TestCase;
16 
20 class GenericEventTest extends TestCase
21 {
25  private $event;
26 
27  private $subject;
28 
32  protected function setUp()
33  {
34  $this->subject = new \stdClass();
35  $this->event = new GenericEvent($this->subject, array('name' => 'Event'));
36  }
37 
41  protected function tearDown()
42  {
43  $this->subject = null;
44  $this->event = null;
45  }
46 
47  public function testConstruct()
48  {
49  $this->assertEquals($this->event, new GenericEvent($this->subject, array('name' => 'Event')));
50  }
51 
55  public function testGetArguments()
56  {
57  // test getting all
58  $this->assertSame(array('name' => 'Event'), $this->event->getArguments());
59  }
60 
61  public function testSetArguments()
62  {
63  $result = $this->event->setArguments(array('foo' => 'bar'));
64  $this->assertAttributeSame(array('foo' => 'bar'), 'arguments', $this->event);
65  $this->assertSame($this->event, $result);
66  }
67 
68  public function testSetArgument()
69  {
70  $result = $this->event->setArgument('foo2', 'bar2');
71  $this->assertAttributeSame(array('name' => 'Event', 'foo2' => 'bar2'), 'arguments', $this->event);
72  $this->assertEquals($this->event, $result);
73  }
74 
75  public function testGetArgument()
76  {
77  // test getting key
78  $this->assertEquals('Event', $this->event->getArgument('name'));
79  }
80 
84  public function testGetArgException()
85  {
86  $this->event->getArgument('nameNotExist');
87  }
88 
89  public function testOffsetGet()
90  {
91  // test getting key
92  $this->assertEquals('Event', $this->event['name']);
93 
94  // test getting invalid arg
95  $this->{method_exists($this, $_ = 'expectException') ? $_ : 'setExpectedException'}('InvalidArgumentException');
96  $this->assertFalse($this->event['nameNotExist']);
97  }
98 
99  public function testOffsetSet()
100  {
101  $this->event['foo2'] = 'bar2';
102  $this->assertAttributeSame(array('name' => 'Event', 'foo2' => 'bar2'), 'arguments', $this->event);
103  }
104 
105  public function testOffsetUnset()
106  {
107  unset($this->event['name']);
108  $this->assertAttributeSame(array(), 'arguments', $this->event);
109  }
110 
111  public function testOffsetIsset()
112  {
113  $this->assertArrayHasKey('name', $this->event);
114  $this->assertArrayNotHasKey('nameNotExist', $this->event);
115  }
116 
117  public function testHasArgument()
118  {
119  $this->assertTrue($this->event->hasArgument('name'));
120  $this->assertFalse($this->event->hasArgument('nameNotExist'));
121  }
122 
123  public function testGetSubject()
124  {
125  $this->assertSame($this->subject, $this->event->getSubject());
126  }
127 
128  public function testHasIterator()
129  {
130  $data = array();
131  foreach ($this->event as $key => $value) {
132  $data[$key] = $value;
133  }
134  $this->assertEquals(array('name' => 'Event'), $data);
135  }
136 }
Symfony\Component\EventDispatcher\Tests\GenericEventTest\testHasIterator
testHasIterator()
Definition: vendor/symfony/event-dispatcher/Tests/GenericEventTest.php:131
Symfony\Component\EventDispatcher\Tests\GenericEventTest\testOffsetUnset
testOffsetUnset()
Definition: vendor/symfony/event-dispatcher/Tests/GenericEventTest.php:108
Symfony\Component\EventDispatcher\Tests\GenericEventTest\testGetArgument
testGetArgument()
Definition: vendor/symfony/event-dispatcher/Tests/GenericEventTest.php:78
Symfony\Component\EventDispatcher\GenericEvent
Definition: lib/vendor/symfony/event-dispatcher/GenericEvent.php:21
Symfony\Component\EventDispatcher\Tests\GenericEventTest\testOffsetGet
testOffsetGet()
Definition: vendor/symfony/event-dispatcher/Tests/GenericEventTest.php:92
Symfony\Component\EventDispatcher\Tests\GenericEventTest\testOffsetIsset
testOffsetIsset()
Definition: vendor/symfony/event-dispatcher/Tests/GenericEventTest.php:114
Symfony\Component\EventDispatcher\Tests\GenericEventTest\testGetSubject
testGetSubject()
Definition: vendor/symfony/event-dispatcher/Tests/GenericEventTest.php:126
Symfony\Component\EventDispatcher\Tests\GenericEventTest\testConstruct
testConstruct()
Definition: vendor/symfony/event-dispatcher/Tests/GenericEventTest.php:50
Symfony\Component\EventDispatcher\Tests\GenericEventTest\testSetArguments
testSetArguments()
Definition: vendor/symfony/event-dispatcher/Tests/GenericEventTest.php:64
Symfony\Component\EventDispatcher\Tests\GenericEventTest\testSetArgument
testSetArgument()
Definition: vendor/symfony/event-dispatcher/Tests/GenericEventTest.php:71
Symfony\Component\EventDispatcher\Tests\GenericEventTest\testHasArgument
testHasArgument()
Definition: vendor/symfony/event-dispatcher/Tests/GenericEventTest.php:120
Symfony\Component\EventDispatcher\Tests\GenericEventTest\tearDown
tearDown()
Definition: vendor/symfony/event-dispatcher/Tests/GenericEventTest.php:44
Symfony\Component\EventDispatcher\Tests\GenericEventTest\testGetArgException
testGetArgException()
Definition: vendor/symfony/event-dispatcher/Tests/GenericEventTest.php:87
Symfony\Component\EventDispatcher\Tests\GenericEventTest\setUp
setUp()
Definition: vendor/symfony/event-dispatcher/Tests/GenericEventTest.php:35
Symfony\Component\EventDispatcher\Tests\GenericEventTest\testGetArguments
testGetArguments()
Definition: vendor/symfony/event-dispatcher/Tests/GenericEventTest.php:58
Symfony\Component\EventDispatcher\Tests
Definition: lib/vendor/symfony/event-dispatcher/Tests/AbstractEventDispatcherTest.php:12
Symfony\Component\EventDispatcher\Tests\GenericEventTest\testOffsetSet
testOffsetSet()
Definition: vendor/symfony/event-dispatcher/Tests/GenericEventTest.php:102