From aeba5c938e0ae66a6e7ade452079ea567f8f82ad Mon Sep 17 00:00:00 2001 From: Matthias Tylkowski Date: Tue, 5 Jul 2016 13:50:42 +0200 Subject: [PATCH 1/4] added failing test case regarding issue #9 --- test/ServiceManagerTest.php | 62 +++++++++++++++++++++++++++++++++++++ 1 file changed, 62 insertions(+) create mode 100644 test/ServiceManagerTest.php diff --git a/test/ServiceManagerTest.php b/test/ServiceManagerTest.php new file mode 100644 index 0000000..a26064b --- /dev/null +++ b/test/ServiceManagerTest.php @@ -0,0 +1,62 @@ + [ + 'SendResponseListener' => SendResponseListener::class, + ], + 'factories' => [ + SendResponseListener::class => InvokableFactory::class + ], + 'delegators' => [ + SendResponseListener::class => [ + function(ContainerInterface $container, $name, callable $callback, array $options = null) { + $consoleResponseSenderDelegatorFactory = new ConsoleResponseSenderDelegatorFactory(); + $sendResponseListener = $consoleResponseSenderDelegatorFactory->__invoke($container, $name, $callback, $options); + $this->assertInstanceOf(SendResponseListener::class, $sendResponseListener); + + $eventManager = $sendResponseListener->getEventManager(); + $this->assertEvents($eventManager); + + return $sendResponseListener; + } + ], + ] + ]; + + $smConfig = new ServiceManagerConfig($minimalConfig); + + $serviceManager = new ServiceManager(); + $smConfig->configureServiceManager($serviceManager); + + $sendResponseListener = $serviceManager->get('SendResponseListener'); + $eventManager = $sendResponseListener->getEventManager(); + $this->assertEvents($eventManager); + } + + protected function assertEvents($eventManager) + { + $r = new ReflectionProperty($eventManager, 'events'); + $r->setAccessible(true); + $events = $r->getValue($eventManager); + + $this->assertEquals(4, count($events['sendResponse'])); + $this->assertEquals(ConsoleResponseSender::class, get_class($events['sendResponse']['-2000.0'][0])); + } +} From 835f4e1fddc32188d0dfacf7c11f0b19bf051cea Mon Sep 17 00:00:00 2001 From: Matthias Tylkowski Date: Tue, 5 Jul 2016 14:01:15 +0200 Subject: [PATCH 2/4] coding standard --- test/ServiceManagerTest.php | 89 +++++++++++++++++++------------------ 1 file changed, 45 insertions(+), 44 deletions(-) diff --git a/test/ServiceManagerTest.php b/test/ServiceManagerTest.php index a26064b..dec5d6d 100644 --- a/test/ServiceManagerTest.php +++ b/test/ServiceManagerTest.php @@ -15,48 +15,49 @@ class ServiceManagerTest extends TestCase { - public function testEventManagerOverridden() - { - $minimalConfig = [ - 'aliases' => [ - 'SendResponseListener' => SendResponseListener::class, - ], - 'factories' => [ - SendResponseListener::class => InvokableFactory::class - ], - 'delegators' => [ - SendResponseListener::class => [ - function(ContainerInterface $container, $name, callable $callback, array $options = null) { - $consoleResponseSenderDelegatorFactory = new ConsoleResponseSenderDelegatorFactory(); - $sendResponseListener = $consoleResponseSenderDelegatorFactory->__invoke($container, $name, $callback, $options); - $this->assertInstanceOf(SendResponseListener::class, $sendResponseListener); - - $eventManager = $sendResponseListener->getEventManager(); - $this->assertEvents($eventManager); - - return $sendResponseListener; - } - ], - ] - ]; - - $smConfig = new ServiceManagerConfig($minimalConfig); - - $serviceManager = new ServiceManager(); - $smConfig->configureServiceManager($serviceManager); - - $sendResponseListener = $serviceManager->get('SendResponseListener'); - $eventManager = $sendResponseListener->getEventManager(); - $this->assertEvents($eventManager); - } - - protected function assertEvents($eventManager) - { - $r = new ReflectionProperty($eventManager, 'events'); - $r->setAccessible(true); - $events = $r->getValue($eventManager); - - $this->assertEquals(4, count($events['sendResponse'])); - $this->assertEquals(ConsoleResponseSender::class, get_class($events['sendResponse']['-2000.0'][0])); - } + public function testEventManagerOverridden() + { + $minimalConfig = [ + 'aliases' => [ + 'SendResponseListener' => SendResponseListener::class, + ], + 'factories' => [ + SendResponseListener::class => InvokableFactory::class + ], + 'delegators' => [ + SendResponseListener::class => [ + function(ContainerInterface $container, $name, callable $callback, array $options = null) + { + $consoleResponseSenderDelegatorFactory = new ConsoleResponseSenderDelegatorFactory(); + $sendResponseListener = $consoleResponseSenderDelegatorFactory->__invoke($container, $name, $callback, $options); + $this->assertInstanceOf(SendResponseListener::class, $sendResponseListener); + + $eventManager = $sendResponseListener->getEventManager(); + $this->assertEvents($eventManager); + + return $sendResponseListener; + } + ], + ] + ]; + + $smConfig = new ServiceManagerConfig($minimalConfig); + + $serviceManager = new ServiceManager(); + $smConfig->configureServiceManager($serviceManager); + + $sendResponseListener = $serviceManager->get('SendResponseListener'); + $eventManager = $sendResponseListener->getEventManager(); + $this->assertEvents($eventManager); + } + + protected function assertEvents($eventManager) + { + $r = new ReflectionProperty($eventManager, 'events'); + $r->setAccessible(true); + $events = $r->getValue($eventManager); + + $this->assertEquals(4, count($events['sendResponse'])); + $this->assertEquals(ConsoleResponseSender::class, get_class($events['sendResponse']['-2000.0'][0])); + } } From f5c50b12ec0891fc1860eaa50bb4ca657026238e Mon Sep 17 00:00:00 2001 From: Matthias Tylkowski Date: Thu, 7 Jul 2016 15:12:22 +0200 Subject: [PATCH 3/4] cs fixes --- test/ServiceManagerTest.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/test/ServiceManagerTest.php b/test/ServiceManagerTest.php index dec5d6d..3a43056 100644 --- a/test/ServiceManagerTest.php +++ b/test/ServiceManagerTest.php @@ -1,4 +1,5 @@ [ SendResponseListener::class => [ - function(ContainerInterface $container, $name, callable $callback, array $options = null) - { + function (ContainerInterface $container, $name, callable $callback, array $options = null) { $consoleResponseSenderDelegatorFactory = new ConsoleResponseSenderDelegatorFactory(); $sendResponseListener = $consoleResponseSenderDelegatorFactory->__invoke($container, $name, $callback, $options); $this->assertInstanceOf(SendResponseListener::class, $sendResponseListener); From 19e56afcffc3ef33086588b3c4e5e892201f9764 Mon Sep 17 00:00:00 2001 From: Matthias Tylkowski Date: Thu, 7 Jul 2016 15:21:08 +0200 Subject: [PATCH 4/4] cs fixes --- test/ServiceManagerTest.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/test/ServiceManagerTest.php b/test/ServiceManagerTest.php index 3a43056..8ecf0a1 100644 --- a/test/ServiceManagerTest.php +++ b/test/ServiceManagerTest.php @@ -14,6 +14,8 @@ use Zend\Mvc\Console\ResponseSender\ConsoleResponseSender; use Zend\Mvc\Console\Service\ConsoleResponseSenderDelegatorFactory; +use ReflectionProperty; + class ServiceManagerTest extends TestCase { public function testEventManagerOverridden()