function TestCase::getMockFromWsdl
Creates a mock object based on the given WSDL file.
Throws
File
-
vendor/
phpunit/ phpunit/ src/ Framework/ TestCase.php, line 1454
Class
- TestCase
- @no-named-arguments Parameter names are not covered by the backward compatibility promise for PHPUnit
Namespace
PHPUnit\FrameworkCode
protected function getMockFromWsdl(string $wsdlFile, string $originalClassName = '', string $mockClassName = '', array $methods = [], bool $callOriginalConstructor = true, array $options = []) : MockObject {
if ($originalClassName === '') {
$fileName = pathinfo(basename(parse_url($wsdlFile, PHP_URL_PATH)), PATHINFO_FILENAME);
$originalClassName = preg_replace('/\\W/', '', $fileName);
}
if (!class_exists($originalClassName)) {
eval((new MockGenerator())->generateClassFromWsdl($wsdlFile, $originalClassName, $methods, $options));
}
$mockObject = (new MockGenerator())->testDouble($originalClassName, true, $methods, [
'',
$options,
], $mockClassName, $callOriginalConstructor, false, false);
Event\Facade::emitter()->testCreatedMockObjectFromWsdl($wsdlFile, $originalClassName, $mockClassName, $methods, $callOriginalConstructor, $options);
assert($mockObject instanceof MockObject);
$this->registerMockObject($mockObject);
return $mockObject;
}