PhpSpec\Runner\CollaboratorManager::getArgumentsFor PHP Method

getArgumentsFor() public method

public getArgumentsFor ( ReflectionFunctionAbstract $function ) : array
$function ReflectionFunctionAbstract
return array
    public function getArgumentsFor(ReflectionFunctionAbstract $function)
    {
        $parameters = array();
        foreach ($function->getParameters() as $parameter) {
            if ($this->has($parameter->getName())) {
                $parameters[] = $this->get($parameter->getName());
            } else {
                $parameters[] = null;
            }
        }
        return $parameters;
    }

Usage Example

コード例 #1
0
 /**
  * @param ExampleNode            $example
  * @param SpecificationInterface $context
  * @param MatcherManager         $matchers
  * @param CollaboratorManager    $collaborators
  */
 public function teardown(ExampleNode $example, SpecificationInterface $context, MatcherManager $matchers, CollaboratorManager $collaborators)
 {
     if (!$example->getSpecification()->getClassReflection()->hasMethod('letgo')) {
         return;
     }
     $reflection = $example->getSpecification()->getClassReflection()->getMethod('letgo');
     $reflection->invokeArgs($context, $collaborators->getArgumentsFor($reflection));
 }