class_partial.phpt (2401B)
1 --TEST-- 2 PHPUnit_Framework_MockObject_Generator::generate('Foo', array('bar'), 'MockFoo', TRUE, TRUE) 3 --FILE-- 4 <?php 5 class Foo 6 { 7 public function bar(Foo $foo) 8 { 9 } 10 11 public function baz(Foo $foo) 12 { 13 } 14 } 15 16 require __DIR__ . '/../../vendor/autoload.php'; 17 18 $generator = new PHPUnit_Framework_MockObject_Generator; 19 20 $mock = $generator->generate( 21 'Foo', 22 array('bar'), 23 'MockFoo', 24 TRUE, 25 TRUE 26 ); 27 28 print $mock['code']; 29 ?> 30 --EXPECTF-- 31 class MockFoo extends Foo implements PHPUnit_Framework_MockObject_MockObject 32 { 33 private $__phpunit_invocationMocker; 34 private $__phpunit_originalObject; 35 36 public function __clone() 37 { 38 $this->__phpunit_invocationMocker = clone $this->__phpunit_getInvocationMocker(); 39 } 40 41 public function bar(Foo $foo) 42 { 43 $arguments = array($foo); 44 $count = func_num_args(); 45 46 if ($count > 1) { 47 $_arguments = func_get_args(); 48 49 for ($i = 1; $i < $count; $i++) { 50 $arguments[] = $_arguments[$i]; 51 } 52 } 53 54 $result = $this->__phpunit_getInvocationMocker()->invoke( 55 new PHPUnit_Framework_MockObject_Invocation_Object( 56 'Foo', 'bar', $arguments, $this, TRUE 57 ) 58 ); 59 60 return $result; 61 } 62 63 public function expects(PHPUnit_Framework_MockObject_Matcher_Invocation $matcher) 64 { 65 return $this->__phpunit_getInvocationMocker()->expects($matcher); 66 } 67 68 public function method() 69 { 70 $any = new PHPUnit_Framework_MockObject_Matcher_AnyInvokedCount; 71 $expects = $this->expects($any); 72 return call_user_func_array(array($expects, 'method'), func_get_args()); 73 } 74 75 public function __phpunit_setOriginalObject($originalObject) 76 { 77 $this->__phpunit_originalObject = $originalObject; 78 } 79 80 public function __phpunit_getInvocationMocker() 81 { 82 if ($this->__phpunit_invocationMocker === NULL) { 83 $this->__phpunit_invocationMocker = new PHPUnit_Framework_MockObject_InvocationMocker; 84 } 85 86 return $this->__phpunit_invocationMocker; 87 } 88 89 public function __phpunit_hasMatchers() 90 { 91 return $this->__phpunit_getInvocationMocker()->hasMatchers(); 92 } 93 94 public function __phpunit_verify() 95 { 96 $this->__phpunit_getInvocationMocker()->verify(); 97 $this->__phpunit_invocationMocker = NULL; 98 } 99 }