Skip to content

Instantly share code, notes, and snippets.

@mageekguy
Created December 16, 2014 13:00
Show Gist options
  • Save mageekguy/bf2ccba6c242ad4afdf9 to your computer and use it in GitHub Desktop.
Save mageekguy/bf2ccba6c242ad4afdf9 to your computer and use it in GitHub Desktop.
protected function getParametersSignature(\reflectionMethod $method, $forceMockController = false)
{
$parameters = array();
$mustBeNull = $this->isOrphanized($method->getName());
foreach ($method->getParameters() as $parameter)
{
$parameterCode = self::getParameterType($parameter) . ($parameter->isPassedByReference() == false ? (self::isVariadic($parameter) === false ? '' : '...' ) : '& ') . '$' . $parameter->getName();
switch (true)
{
case $parameter->isDefaultValueAvailable():
$parameterCode .= ' = ' . var_export($parameter->getDefaultValue(), true);
break;
case $parameter->isOptional() && self::isVariadic($parameter) === false:
case $mustBeNull:
$parameterCode .= ' = null';
}
$parameters[] = $parameterCode;
}
if ($method->isConstructor() || $forceMockController)
{
$parameters[] = '\\' . __NAMESPACE__ . '\\controller $mockController = null';
}
return join(', ', $parameters);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment