annotate vendor/phpunit/phpunit-mock-objects/tests/Generator/abstract_class.phpt @ 19:fa3358dc1485 tip

Add ndrum files
author Chris Cannam
date Wed, 28 Aug 2019 13:14:47 +0100
parents 1fec387a4317
children
rev   line source
Chris@14 1 --TEST--
Chris@14 2 \PHPUnit\Framework\MockObject\Generator::generate('Foo', array(), 'MockFoo', true, true)
Chris@14 3 --FILE--
Chris@14 4 <?php
Chris@14 5 abstract class Foo
Chris@14 6 {
Chris@14 7 public function one()
Chris@14 8 {
Chris@14 9 }
Chris@14 10
Chris@14 11 abstract public function two();
Chris@14 12
Chris@14 13 abstract protected function three();
Chris@14 14 }
Chris@14 15
Chris@14 16 require __DIR__ . '/../../vendor/autoload.php';
Chris@14 17
Chris@14 18 $generator = new \PHPUnit\Framework\MockObject\Generator;
Chris@14 19
Chris@14 20 $mock = $generator->generate(
Chris@14 21 'Foo',
Chris@14 22 array(),
Chris@14 23 'MockFoo',
Chris@14 24 true,
Chris@14 25 true
Chris@14 26 );
Chris@14 27
Chris@14 28 print $mock['code'];
Chris@14 29 ?>
Chris@14 30 --EXPECTF--
Chris@14 31 class MockFoo extends Foo implements PHPUnit\Framework\MockObject\MockObject
Chris@14 32 {
Chris@14 33 private $__phpunit_invocationMocker;
Chris@14 34 private $__phpunit_originalObject;
Chris@14 35 private $__phpunit_configurable = ['one', 'two', 'three'];
Chris@14 36
Chris@14 37 public function __clone()
Chris@14 38 {
Chris@14 39 $this->__phpunit_invocationMocker = clone $this->__phpunit_getInvocationMocker();
Chris@14 40 }
Chris@14 41
Chris@14 42 public function one()
Chris@14 43 {
Chris@14 44 $arguments = array();
Chris@14 45 $count = func_num_args();
Chris@14 46
Chris@14 47 if ($count > 0) {
Chris@14 48 $_arguments = func_get_args();
Chris@14 49
Chris@14 50 for ($i = 0; $i < $count; $i++) {
Chris@14 51 $arguments[] = $_arguments[$i];
Chris@14 52 }
Chris@14 53 }
Chris@14 54
Chris@14 55 $result = $this->__phpunit_getInvocationMocker()->invoke(
Chris@14 56 new \PHPUnit\Framework\MockObject\Invocation\ObjectInvocation(
Chris@14 57 'Foo', 'one', $arguments, '', $this, true
Chris@14 58 )
Chris@14 59 );
Chris@14 60
Chris@14 61 return $result;
Chris@14 62 }
Chris@14 63
Chris@14 64 public function two()
Chris@14 65 {
Chris@14 66 $arguments = array();
Chris@14 67 $count = func_num_args();
Chris@14 68
Chris@14 69 if ($count > 0) {
Chris@14 70 $_arguments = func_get_args();
Chris@14 71
Chris@14 72 for ($i = 0; $i < $count; $i++) {
Chris@14 73 $arguments[] = $_arguments[$i];
Chris@14 74 }
Chris@14 75 }
Chris@14 76
Chris@14 77 $result = $this->__phpunit_getInvocationMocker()->invoke(
Chris@14 78 new \PHPUnit\Framework\MockObject\Invocation\ObjectInvocation(
Chris@14 79 'Foo', 'two', $arguments, '', $this, true
Chris@14 80 )
Chris@14 81 );
Chris@14 82
Chris@14 83 return $result;
Chris@14 84 }
Chris@14 85
Chris@14 86 protected function three()
Chris@14 87 {
Chris@14 88 $arguments = array();
Chris@14 89 $count = func_num_args();
Chris@14 90
Chris@14 91 if ($count > 0) {
Chris@14 92 $_arguments = func_get_args();
Chris@14 93
Chris@14 94 for ($i = 0; $i < $count; $i++) {
Chris@14 95 $arguments[] = $_arguments[$i];
Chris@14 96 }
Chris@14 97 }
Chris@14 98
Chris@14 99 $result = $this->__phpunit_getInvocationMocker()->invoke(
Chris@14 100 new \PHPUnit\Framework\MockObject\Invocation\ObjectInvocation(
Chris@14 101 'Foo', 'three', $arguments, '', $this, true
Chris@14 102 )
Chris@14 103 );
Chris@14 104
Chris@14 105 return $result;
Chris@14 106 }
Chris@14 107
Chris@14 108 public function expects(\PHPUnit\Framework\MockObject\Matcher\Invocation $matcher)
Chris@14 109 {
Chris@14 110 return $this->__phpunit_getInvocationMocker()->expects($matcher);
Chris@14 111 }
Chris@14 112
Chris@14 113 public function method()
Chris@14 114 {
Chris@14 115 $any = new \PHPUnit\Framework\MockObject\Matcher\AnyInvokedCount;
Chris@14 116 $expects = $this->expects($any);
Chris@14 117 return call_user_func_array(array($expects, 'method'), func_get_args());
Chris@14 118 }
Chris@14 119
Chris@14 120 public function __phpunit_setOriginalObject($originalObject)
Chris@14 121 {
Chris@14 122 $this->__phpunit_originalObject = $originalObject;
Chris@14 123 }
Chris@14 124
Chris@14 125 public function __phpunit_getInvocationMocker()
Chris@14 126 {
Chris@14 127 if ($this->__phpunit_invocationMocker === null) {
Chris@14 128 $this->__phpunit_invocationMocker = new \PHPUnit\Framework\MockObject\InvocationMocker($this->__phpunit_configurable);
Chris@14 129 }
Chris@14 130
Chris@14 131 return $this->__phpunit_invocationMocker;
Chris@14 132 }
Chris@14 133
Chris@14 134 public function __phpunit_hasMatchers()
Chris@14 135 {
Chris@14 136 return $this->__phpunit_getInvocationMocker()->hasMatchers();
Chris@14 137 }
Chris@14 138
Chris@14 139 public function __phpunit_verify($unsetInvocationMocker = true)
Chris@14 140 {
Chris@14 141 $this->__phpunit_getInvocationMocker()->verify();
Chris@14 142
Chris@14 143 if ($unsetInvocationMocker) {
Chris@14 144 $this->__phpunit_invocationMocker = null;
Chris@14 145 }
Chris@14 146 }
Chris@14 147 }