diff --git a/RouteDescriber/RouteMetadataDescriber.php b/RouteDescriber/RouteMetadataDescriber.php index 5a7baa4..8dc5b3a 100644 --- a/RouteDescriber/RouteMetadataDescriber.php +++ b/RouteDescriber/RouteMetadataDescriber.php @@ -73,7 +73,7 @@ final class RouteMetadataDescriber implements RouteDescriberInterface private function getRefParams(OA\OpenApi $api, OA\Operation $operation): array { /** @var OA\Parameter[] $globalParams */ - $globalParams = OA\UNDEFINED !== $api->components->parameters ? $api->components->parameters : []; + $globalParams = OA\UNDEFINED !== $api->components && OA\UNDEFINED !== $api->components->parameters ? $api->components->parameters : []; $existingParams = []; $operationParameters = OA\UNDEFINED !== $operation->parameters ? $operation->parameters : []; diff --git a/Tests/RouteDescriber/RouteMetadataDescriberTest.php b/Tests/RouteDescriber/RouteMetadataDescriberTest.php new file mode 100644 index 0000000..d7b5452 --- /dev/null +++ b/Tests/RouteDescriber/RouteMetadataDescriberTest.php @@ -0,0 +1,27 @@ +assertNull($routeDescriber->describe(new OpenApi([]), new Route('foo'), new \ReflectionMethod(__CLASS__, 'testUndefinedCheck'))); + } +}