From efa83ca54eefb43e7af16a3c08e8b613d075fc79 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sama=C3=ABl=20tomas?= Date: Tue, 19 Oct 2021 14:29:11 +0200 Subject: [PATCH] Fix OpenApiRenderer list could be null (#1881) Co-authored-by: Samael tomas --- Render/RenderOpenApi.php | 4 ++-- Tests/Render/RenderOpenApiTest.php | 13 +++++++++++++ 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/Render/RenderOpenApi.php b/Render/RenderOpenApi.php index b561fa6..c9b7594 100644 --- a/Render/RenderOpenApi.php +++ b/Render/RenderOpenApi.php @@ -26,10 +26,10 @@ class RenderOpenApi /** @var ContainerInterface */ private $generatorLocator; - /** @var array */ + /** @var array */ private $openApiRenderers = []; - public function __construct(ContainerInterface $generatorLocator, OpenApiRenderer ...$openApiRenderers) + public function __construct(ContainerInterface $generatorLocator, ?OpenApiRenderer ...$openApiRenderers) { $this->generatorLocator = $generatorLocator; foreach ($openApiRenderers as $openApiRenderer) { diff --git a/Tests/Render/RenderOpenApiTest.php b/Tests/Render/RenderOpenApiTest.php index d9b656b..d24e4f7 100644 --- a/Tests/Render/RenderOpenApiTest.php +++ b/Tests/Render/RenderOpenApiTest.php @@ -48,6 +48,19 @@ class RenderOpenApiTest extends TestCase $this->renderOpenApi(); } + public function testNullFormat() + { + $openApiRenderer = $this->createMock(OpenApiRenderer::class); + $openApiRenderer->method('getFormat')->willReturn($this->format); + $openApiRenderer->expects($this->once())->method('render'); + + $availableOpenApiRenderers = [ + $openApiRenderer, + null, + ]; + $this->renderOpenApi(...$availableOpenApiRenderers); + } + private function renderOpenApi(...$openApiRenderer): void { $spec = $this->createMock(OpenApi::class);