public function testDispatchMultipleEvents() { // Arrange $dispatcher = new Dispatcher(); $dispatcher->addListener('event.foo', function ($subject) { $subject->touched++; }); $dispatcher->addListener('event.bar', function ($subject) { $subject->touched++; }); $subject = new \stdClass(); $subject->touched = 0; // Act $dispatcher->dispatch('event.foo', $subject); $dispatcher->dispatch('event.bar', $subject); // Assert $this->assertEquals(2, $subject->touched); }