public function PHPUnit_Framework_MockObject_Generator::getObjectForTrait in Zircon Profile 8
Same name and namespace in other branches
- 8.0 vendor/phpunit/phpunit-mock-objects/src/Framework/MockObject/Generator.php \PHPUnit_Framework_MockObject_Generator::getObjectForTrait()
Returns an object for the specified trait.
@since Method available since Release 1.1.0
Parameters
string $traitName:
array $arguments:
string $traitClassName:
bool $callOriginalConstructor:
bool $callOriginalClone:
bool $callAutoload:
Return value
object
Throws
PHPUnit_Framework_MockObject_RuntimeException
File
- vendor/
phpunit/ phpunit-mock-objects/ src/ Framework/ MockObject/ Generator.php, line 433
Class
- PHPUnit_Framework_MockObject_Generator
- Mock Object Code Generator
Code
public function getObjectForTrait($traitName, array $arguments = array(), $traitClassName = '', $callOriginalConstructor = true, $callOriginalClone = true, $callAutoload = true) {
if (!is_string($traitName)) {
throw PHPUnit_Util_InvalidArgumentHelper::factory(1, 'string');
}
if (!is_string($traitClassName)) {
throw PHPUnit_Util_InvalidArgumentHelper::factory(3, 'string');
}
if (!trait_exists($traitName, $callAutoload)) {
throw new PHPUnit_Framework_MockObject_RuntimeException(sprintf('Trait "%s" does not exist.', $traitName));
}
$className = $this
->generateClassName($traitName, $traitClassName, 'Trait_');
$templateDir = dirname(__FILE__) . DIRECTORY_SEPARATOR . 'Generator' . DIRECTORY_SEPARATOR;
$classTemplate = new Text_Template($templateDir . 'trait_class.tpl');
$classTemplate
->setVar(array(
'prologue' => '',
'class_name' => $className['className'],
'trait_name' => $traitName,
));
return $this
->getObject($classTemplate
->render(), $className['className']);
}