From 4fcf78fbda906b5806184777b8c1827475b5931e Mon Sep 17 00:00:00 2001 From: Khoubza Younes Date: Tue, 31 Jan 2023 22:16:14 +0100 Subject: [PATCH] test: add AddToStorageListener tests --- .../AddToStorageListenerTest.php | 44 +++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 tests/Prime/EventDispatcher/EventListener/AddToStorageListenerTest.php diff --git a/tests/Prime/EventDispatcher/EventListener/AddToStorageListenerTest.php b/tests/Prime/EventDispatcher/EventListener/AddToStorageListenerTest.php new file mode 100644 index 00000000..769e8041 --- /dev/null +++ b/tests/Prime/EventDispatcher/EventListener/AddToStorageListenerTest.php @@ -0,0 +1,44 @@ + + */ + +namespace Flasher\Tests\Prime\EventDispatcher\EventListener; + +use Flasher\Prime\EventDispatcher\Event\PersistEvent; +use Flasher\Prime\EventDispatcher\EventDispatcher; +use Flasher\Prime\EventDispatcher\EventListener\AddToStorageListener; +use Flasher\Prime\Notification\Envelope; +use Flasher\Prime\Notification\Notification; +use Flasher\Prime\Stamp\UnlessStamp; +use Flasher\Prime\Stamp\WhenStamp; +use Flasher\Tests\Prime\TestCase; + +class AddToStorageListenerTest extends TestCase +{ + /** + * @return void + */ + public function testAddToStorageListener() + { + $eventDispatcher = new EventDispatcher(); + $this->setProperty($eventDispatcher, 'listeners', array()); + + $listener = new AddToStorageListener(); + $eventDispatcher->addSubscriber($listener); + + $envelopes = array( + new Envelope(new Notification(), new WhenStamp(false)), + new Envelope(new Notification()), + new Envelope(new Notification(), new UnlessStamp(true)), + new Envelope(new Notification()), + ); + $event = new PersistEvent($envelopes); + + $eventDispatcher->dispatch($event); + + $this->assertEquals(array($envelopes[1], $envelopes[3]), $event->getEnvelopes()); + } +}