protected function PHPUnit_Framework_MockObject_Generator::getObject 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::getObject()
Parameters
string $code:
string $className:
array|string $type:
bool $callOriginalConstructor:
bool $callAutoload:
array $arguments:
bool $callOriginalMethods:
object $proxyTarget:
Return value
object
2 calls to PHPUnit_Framework_MockObject_Generator::getObject()
- PHPUnit_Framework_MockObject_Generator::getMock in vendor/
phpunit/ phpunit-mock-objects/ src/ Framework/ MockObject/ Generator.php - Returns a mock object for the specified class.
- PHPUnit_Framework_MockObject_Generator::getObjectForTrait in vendor/
phpunit/ phpunit-mock-objects/ src/ Framework/ MockObject/ Generator.php - Returns an object for the specified trait.
File
- vendor/
phpunit/ phpunit-mock-objects/ src/ Framework/ MockObject/ Generator.php, line 235
Class
- PHPUnit_Framework_MockObject_Generator
- Mock Object Code Generator
Code
protected function getObject($code, $className, $type = '', $callOriginalConstructor = false, $callAutoload = false, array $arguments = array(), $callOriginalMethods = false, $proxyTarget = null) {
$this
->evalClass($code, $className);
if ($callOriginalConstructor && is_string($type) && !interface_exists($type, $callAutoload)) {
if (count($arguments) == 0) {
$object = new $className();
}
else {
$class = new ReflectionClass($className);
$object = $class
->newInstanceArgs($arguments);
}
}
else {
try {
$instantiator = new Instantiator();
$object = $instantiator
->instantiate($className);
} catch (InstantiatorUnexpectedValueException $exception) {
if ($exception
->getPrevious()) {
$exception = $exception
->getPrevious();
}
throw new PHPUnit_Framework_MockObject_RuntimeException($exception
->getMessage());
} catch (InstantiatorInvalidArgumentException $exception) {
throw new PHPUnit_Framework_MockObject_RuntimeException($exception
->getMessage());
}
}
if ($callOriginalMethods) {
if (!is_object($proxyTarget)) {
if (count($arguments) == 0) {
$proxyTarget = new $type();
}
else {
$class = new ReflectionClass($type);
$proxyTarget = $class
->newInstanceArgs($arguments);
}
}
$object
->__phpunit_setOriginalObject($proxyTarget);
}
return $object;
}