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