public function testServiceManagerRespectsSharedFlagWhenRetrievingFromPeeredServiceManager() { $this->serviceManager->setInvokableClass('foo', 'PPI\\FrameworkTest\\ServiceManager\\Fixtures\\Foo'); $this->serviceManager->setShared('foo', false); $childManager = new ServiceManager(new Config()); $childManager->addPeeringServiceManager($this->serviceManager); $childManager->setRetrieveFromPeeringManagerFirst(false); $this->assertNotSame($childManager->get('foo'), $childManager->get('foo')); }
/** * @group router */ public function testWillRethrowOnNonValidatedPlugin() { $sm = new ServiceManager(); $sm->setInvokableClass('stdClass', 'stdClass'); /** @var \Zend\ServiceManager\AbstractPluginManager|\PHPUnit_Framework_MockObject_MockObject $pluginManager */ $pluginManager = $this->getMockForAbstractClass('Zend\\ServiceManager\\AbstractPluginManager'); $pluginManager->expects($this->once())->method('validatePlugin')->with($this->isInstanceOf('stdClass'))->will($this->throwException(new RuntimeException())); $pluginManager->setServiceLocator($sm); $this->setExpectedException('Zend\\ServiceManager\\Exception\\ServiceLocatorUsageException'); $pluginManager->get('stdClass'); }