Esempio n. 1
0
 /**
  * @covers \OcraServiceManager\ServiceManager\Logger::getDependingInstances
  * @covers \OcraServiceManager\ServiceManager\Logger::getDependencyInstances
  * @covers \OcraServiceManager\ServiceManager\Logger::getParentRequestingService
  */
 public function testGetDependingInstancesOnMultipleAccesses()
 {
     $locator = $this->getMock('Zend\\ServiceManager\\ServiceLocatorInterface');
     $dependency = new \stdClass();
     $instance = new \stdClass();
     $this->listener->registerServiceCall($locator, $dependency, 'dependency-canonical-name', 'dependency\\first\\requested\\name', 'get', array(array('object' => $locator, 'function' => 'get', 'args' => array('dependency\\first\\requested\\name'))));
     $this->listener->registerServiceCall($locator, $dependency, 'dependency-canonical-name', 'dependency\\requested\\name', 'get', array(array('object' => $locator, 'function' => 'get', 'args' => array('dependency\\requested\\name')), array('object' => $locator, 'function' => 'otherLocatorMethod'), array('function' => 'doStuff'), array('object' => $locator, 'function' => 'get', 'args' => array('instance\\requested\\name'))));
     $this->listener->registerServiceCall($locator, $dependency, 'dependency-canonical-name', 'dependency\\second\\requested\\name', 'get', array(array('object' => $locator, 'function' => 'get', 'args' => array('dependency\\second\\requested\\name'))));
     $this->listener->registerServiceCall($locator, $instance, 'instance-canonical-name', 'instance\\requested\\name', 'get', array(array('object' => $locator, 'function' => 'get', 'args' => array('instance\\requested\\name'))));
     $this->assertEmpty($this->listener->getDependingInstances($instance));
     $dependencyDepending = $this->listener->getDependingInstances($dependency);
     $this->assertCount(1, $dependencyDepending);
     $this->assertSame($dependencyDepending[0]['instance'], $instance);
     $this->assertEmpty($this->listener->getDependencyInstances($dependency));
     $instanceDependencies = $this->listener->getDependencyInstances($instance);
     $this->assertCount(1, $instanceDependencies);
     $this->assertSame($instanceDependencies[0]['instance'], $dependency);
 }