Skip to content
This repository was archived by the owner on Apr 20, 2021. It is now read-only.

Commit a72d06f

Browse files
Support PHP 8 + fix deprecation
1 parent 78b29a4 commit a72d06f

File tree

1 file changed

+7
-5
lines changed

1 file changed

+7
-5
lines changed

src/HttpCall/HttpCallResultPoolResolver.php

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
namespace Behatch\HttpCall;
44

55
use Behat\Behat\Context\Argument\ArgumentResolver;
6+
use ReflectionClass;
67

78
class HttpCallResultPoolResolver implements ArgumentResolver
89
{
@@ -23,11 +24,12 @@ public function resolveArguments(\ReflectionClass $classReflection, array $argum
2324
if ($constructor !== null) {
2425
$parameters = $constructor->getParameters();
2526
foreach ($parameters as $parameter) {
26-
if (
27-
null !== $parameter->getClass()
28-
&& isset($this->dependencies[$parameter->getClass()->name])
29-
) {
30-
$arguments[$parameter->name] = $this->dependencies[$parameter->getClass()->name];
27+
$class = PHP_VERSION_ID < 80000 ? $parameter->getClass() : ($parameter->getType() && !$parameter->getType()->isBuiltin()
28+
? new ReflectionClass($parameter->getType()->getName())
29+
: null
30+
);
31+
if (null !== $class && isset($this->dependencies[$class->name])) {
32+
$arguments[$parameter->name] = $this->dependencies[$class->name];
3133
}
3234
}
3335
}

0 commit comments

Comments
 (0)