Chris@0: --TEST-- Chris@0: PHPUnit_Framework_MockObject_Generator::generate('Foo', array(), 'MockFoo', TRUE, TRUE) Chris@0: --SKIPIF-- Chris@0: = 5.4.0 required'; Chris@0: ?> Chris@0: --FILE-- Chris@0: hi(); Chris@0: } Chris@0: } Chris@0: Chris@0: class Foo Chris@0: { Chris@0: use ChildTrait; Chris@0: Chris@0: public function speak() Chris@0: { Chris@0: return $this->world(); Chris@0: } Chris@0: } Chris@0: Chris@0: require __DIR__ . '/../../vendor/autoload.php'; Chris@0: Chris@0: $generator = new PHPUnit_Framework_MockObject_Generator; Chris@0: Chris@0: $mock = $generator->generate( Chris@0: 'Foo', Chris@0: array(), Chris@0: 'MockFoo', Chris@0: TRUE, Chris@0: TRUE Chris@0: ); Chris@0: Chris@0: print $mock['code']; Chris@0: ?> Chris@0: --EXPECTF-- Chris@0: class MockFoo extends Foo implements PHPUnit_Framework_MockObject_MockObject Chris@0: { Chris@0: private $__phpunit_invocationMocker; Chris@0: private $__phpunit_originalObject; Chris@0: Chris@0: public function __clone() Chris@0: { Chris@0: $this->__phpunit_invocationMocker = clone $this->__phpunit_getInvocationMocker(); Chris@0: } Chris@0: Chris@0: public function speak() Chris@0: { Chris@0: $arguments = array(); Chris@0: $count = func_num_args(); Chris@0: Chris@0: if ($count > 0) { Chris@0: $_arguments = func_get_args(); Chris@0: Chris@0: for ($i = 0; $i < $count; $i++) { Chris@0: $arguments[] = $_arguments[$i]; Chris@0: } Chris@0: } Chris@0: Chris@0: $result = $this->__phpunit_getInvocationMocker()->invoke( Chris@0: new PHPUnit_Framework_MockObject_Invocation_Object( Chris@0: 'Foo', 'speak', $arguments, $this, TRUE Chris@0: ) Chris@0: ); Chris@0: Chris@0: return $result; Chris@0: } Chris@0: Chris@0: public function expects(PHPUnit_Framework_MockObject_Matcher_Invocation $matcher) Chris@0: { Chris@0: return $this->__phpunit_getInvocationMocker()->expects($matcher); Chris@0: } Chris@0: Chris@0: public function method() Chris@0: { Chris@0: $any = new PHPUnit_Framework_MockObject_Matcher_AnyInvokedCount; Chris@0: $expects = $this->expects($any); Chris@0: return call_user_func_array(array($expects, 'method'), func_get_args()); Chris@0: } Chris@0: Chris@0: public function __phpunit_setOriginalObject($originalObject) Chris@0: { Chris@0: $this->__phpunit_originalObject = $originalObject; Chris@0: } Chris@0: Chris@0: public function __phpunit_getInvocationMocker() Chris@0: { Chris@0: if ($this->__phpunit_invocationMocker === NULL) { Chris@0: $this->__phpunit_invocationMocker = new PHPUnit_Framework_MockObject_InvocationMocker; Chris@0: } Chris@0: Chris@0: return $this->__phpunit_invocationMocker; Chris@0: } Chris@0: Chris@0: public function __phpunit_hasMatchers() Chris@0: { Chris@0: return $this->__phpunit_getInvocationMocker()->hasMatchers(); Chris@0: } Chris@0: Chris@0: public function __phpunit_verify() Chris@0: { Chris@0: $this->__phpunit_getInvocationMocker()->verify(); Chris@0: $this->__phpunit_invocationMocker = NULL; Chris@0: } Chris@0: } Chris@0: