/** * Retrieves list of classes for given path * * @param string $path path to dir with files * * @return array * @throws FileSystemException */ public function getList($path) { $classes = []; foreach ($this->classesScanner->getList($path) as $className) { $classes[$className] = $this->classReaderDecorator->getConstructor($className); } return $classes; }
/** * Returns constructor with defined arguments * * @param DefinitionsCollection $definitionsCollection * @param ConfigInterface $config * @return array|mixed * @throws \ReflectionException */ private function getConfigForScope(DefinitionsCollection $definitionsCollection, ConfigInterface $config) { $constructors = []; $argumentsResolver = $this->argumentsResolverFactory->create($config); foreach ($definitionsCollection->getInstancesNamesList() as $instanceType) { if (!$this->typeReader->isConcrete($instanceType)) { continue; } $constructor = $definitionsCollection->getInstanceArguments($instanceType); $constructors[$instanceType] = $argumentsResolver->getResolvedConstructorArguments($instanceType, $constructor); } foreach (array_keys($config->getVirtualTypes()) as $instanceType) { $originalType = $config->getInstanceType($instanceType); if (!$definitionsCollection->hasInstance($originalType)) { if (!$this->typeReader->isConcrete($originalType)) { continue; } $constructor = $this->classReaderDecorator->getConstructor($originalType); } else { $constructor = $definitionsCollection->getInstanceArguments($originalType); } $constructors[$instanceType] = $argumentsResolver->getResolvedConstructorArguments($instanceType, $constructor); } return $constructors; }
public function testGetParents() { $stringArray = ['Parent_Class_Name1', 'Interface_1']; $this->classReaderMock->expects($this->once())->method('getParents')->with('Child_Class_Name')->willReturn($stringArray); $this->assertEquals($stringArray, $this->model->getParents('Child_Class_Name')); }