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