/** * @param CollaboratorManager $collaborators * @param \ReflectionMethod $beforeMethod */ private function createMissingCollabolators(CollaboratorManager $collaborators, \ReflectionMethod $beforeMethod) { foreach ($beforeMethod->getParameters() as $parameter) { if (!$collaborators->has($parameter->getName())) { $collaborator = new Collaborator($this->prophet->prophesize()); if (null !== ($class = $parameter->getClass())) { $collaborator->beADoubleOf($class->getName()); } $collaborators->set($parameter->getName(), $collaborator); } } }
/** * @param CollaboratorManager $collaborators * @param string $name * * @return Collaborator */ private function getOrCreateCollaborator(CollaboratorManager $collaborators, $name) { if (!$collaborators->has($name)) { $collaborator = new Collaborator($this->prophet->prophesize()); $collaborators->set($name, $collaborator); } return $collaborators->get($name); }