EVOLUTION-MANAGER
Edit File: 3967.phpt
--TEST-- https://github.com/sebastianbergmann/phpunit/issues/3967 --FILE-- <?php declare(strict_types=1); interface Bar extends \Throwable { public function foo(): string; } interface Baz extends Bar { } require __DIR__ . '/../../../../vendor/autoload.php'; $generator = new \PHPUnit\Framework\MockObject\Generator; $mock = $generator->generate( 'Baz', [], 'MockBaz', true, true ); print $mock['code']; --EXPECT-- class MockBaz extends Exception implements Baz, PHPUnit\Framework\MockObject\MockObject { private $__phpunit_invocationMocker; private $__phpunit_originalObject; private $__phpunit_configurable = ['foo']; private $__phpunit_returnValueGeneration = true; public function foo(): string { $__phpunit_arguments = []; $__phpunit_count = func_num_args(); if ($__phpunit_count > 0) { $__phpunit_arguments_tmp = func_get_args(); for ($__phpunit_i = 0; $__phpunit_i < $__phpunit_count; $__phpunit_i++) { $__phpunit_arguments[] = $__phpunit_arguments_tmp[$__phpunit_i]; } } $__phpunit_result = $this->__phpunit_getInvocationMocker()->invoke( new \PHPUnit\Framework\MockObject\Invocation\ObjectInvocation( 'Bar', 'foo', $__phpunit_arguments, 'string', $this, true ) ); return $__phpunit_result; } public function expects(\PHPUnit\Framework\MockObject\Matcher\Invocation $matcher) { return $this->__phpunit_getInvocationMocker()->expects($matcher); } public function method() { $any = new \PHPUnit\Framework\MockObject\Matcher\AnyInvokedCount; $expects = $this->expects($any); return call_user_func_array([$expects, 'method'], func_get_args()); } public function __phpunit_setOriginalObject($originalObject) { $this->__phpunit_originalObject = $originalObject; } public function __phpunit_setReturnValueGeneration(bool $returnValueGeneration) { $this->__phpunit_returnValueGeneration = $returnValueGeneration; } public function __phpunit_getInvocationMocker() { if ($this->__phpunit_invocationMocker === null) { $this->__phpunit_invocationMocker = new \PHPUnit\Framework\MockObject\InvocationMocker($this->__phpunit_configurable, $this->__phpunit_returnValueGeneration); } return $this->__phpunit_invocationMocker; } public function __phpunit_hasMatchers() { return $this->__phpunit_getInvocationMocker()->hasMatchers(); } public function __phpunit_verify(bool $unsetInvocationMocker = true) { $this->__phpunit_getInvocationMocker()->verify(); if ($unsetInvocationMocker) { $this->__phpunit_invocationMocker = null; } } }