1--TEST-- 2PHPUnit_Framework_MockObject_Generator::generate('Foo', array(), 'MockFoo', true) 3--FILE-- 4<?php 5class Foo 6{ 7 public function __clone() 8 { 9 } 10} 11 12require __DIR__ . '/../../../vendor/autoload.php'; 13 14$generator = new PHPUnit_Framework_MockObject_Generator; 15 16$mock = $generator->generate( 17 'Foo', 18 array(), 19 'MockFoo', 20 true 21); 22 23print $mock['code']; 24?> 25--EXPECTF-- 26class MockFoo extends Foo implements PHPUnit_Framework_MockObject_MockObject 27{ 28 private $__phpunit_invocationMocker; 29 private $__phpunit_originalObject; 30 private $__phpunit_configurable = []; 31 32 public function __clone() 33 { 34 $this->__phpunit_invocationMocker = clone $this->__phpunit_getInvocationMocker(); 35 parent::__clone(); 36 } 37 38 public function expects(PHPUnit_Framework_MockObject_Matcher_Invocation $matcher) 39 { 40 return $this->__phpunit_getInvocationMocker()->expects($matcher); 41 } 42 43 public function method() 44 { 45 $any = new PHPUnit_Framework_MockObject_Matcher_AnyInvokedCount; 46 $expects = $this->expects($any); 47 return call_user_func_array(array($expects, 'method'), func_get_args()); 48 } 49 50 public function __phpunit_setOriginalObject($originalObject) 51 { 52 $this->__phpunit_originalObject = $originalObject; 53 } 54 55 public function __phpunit_getInvocationMocker() 56 { 57 if ($this->__phpunit_invocationMocker === null) { 58 $this->__phpunit_invocationMocker = new PHPUnit_Framework_MockObject_InvocationMocker($this->__phpunit_configurable); 59 } 60 61 return $this->__phpunit_invocationMocker; 62 } 63 64 public function __phpunit_hasMatchers() 65 { 66 return $this->__phpunit_getInvocationMocker()->hasMatchers(); 67 } 68 69 public function __phpunit_verify($unsetInvocationMocker = true) 70 { 71 $this->__phpunit_getInvocationMocker()->verify(); 72 73 if ($unsetInvocationMocker) { 74 $this->__phpunit_invocationMocker = null; 75 } 76 } 77} 78