/** * @covers PPI\Framework\ServiceManager::setService * @covers PPI\Framework\ServiceManager::get * @covers PPI\Framework\ServiceManager::retrieveFromPeeringManagerFirst * @covers PPI\Framework\ServiceManager::setRetrieveFromPeeringManagerFirst * @covers PPI\Framework\ServiceManager::addPeeringServiceManager */ public function testRetrieveServiceFromPeeringServiceManagerIfretrieveFromPeeringManagerFirstSetToTrueAndServiceNamesAreSame() { $foo1 = "foo1"; $boo1 = "boo1"; $boo2 = "boo2"; $this->serviceManager->setService($foo1, $boo1); $this->assertEquals($this->serviceManager->get($foo1), $boo1); $serviceManagerChild = new ServiceManager(); $serviceManagerChild->setService($foo1, $boo2); $this->assertEquals($serviceManagerChild->get($foo1), $boo2); $this->assertFalse($this->serviceManager->retrieveFromPeeringManagerFirst()); $this->serviceManager->setRetrieveFromPeeringManagerFirst(true); $this->assertTrue($this->serviceManager->retrieveFromPeeringManagerFirst()); $this->serviceManager->addPeeringServiceManager($serviceManagerChild); $this->assertContains($serviceManagerChild, $this->readAttribute($this->serviceManager, 'peeringServiceManagers')); $this->assertEquals($serviceManagerChild->get($foo1), $boo2); $this->assertEquals($this->serviceManager->get($foo1), $boo2); }