diff --git a/tests/Events/EventsDispatcherTest.php b/tests/Events/EventsDispatcherTest.php index 85e56a9c84e3..36232a8d2a46 100755 --- a/tests/Events/EventsDispatcherTest.php +++ b/tests/Events/EventsDispatcherTest.php @@ -132,14 +132,20 @@ public function testQueuedEventsAreFired() { unset($_SERVER['__event.test']); $d = new Dispatcher; - $d->push('update', ['name' => 'taylor']); $d->listen('update', function ($name) { $_SERVER['__event.test'] = $name; }); + $d->push('update', ['name' => 'taylor']); + $d->listen('update', function ($name) { + $_SERVER['__event.test'] .= '_'.$name; + }); $this->assertFalse(isset($_SERVER['__event.test'])); $d->flush('update'); - $this->assertSame('taylor', $_SERVER['__event.test']); + $d->listen('update', function ($name) { + $_SERVER['__event.test'] .= $name; + }); + $this->assertSame('taylor_taylor', $_SERVER['__event.test']); } public function testQueuedEventsCanBeForgotten() @@ -156,6 +162,20 @@ public function testQueuedEventsCanBeForgotten() $this->assertSame('unset', $_SERVER['__event.test']); } + public function testMultiplePushedEventsWillGetFlushed() + { + $_SERVER['__event.test'] = ''; + $d = new Dispatcher; + $d->push('update', ['name' => 'taylor ']); + $d->push('update', ['name' => 'otwell']); + $d->listen('update', function ($name) { + $_SERVER['__event.test'] .= $name; + }); + + $d->flush('update'); + $this->assertSame('taylor otwell', $_SERVER['__event.test']); + } + public function testWildcardListeners() { unset($_SERVER['__event.test']);