diff --git a/composer.json b/composer.json index 506b4473..be4ace8e 100644 --- a/composer.json +++ b/composer.json @@ -43,7 +43,7 @@ ], "require": { "php": "^8.1", - "sonata-project/block-bundle": "^3.23.0 || ^4.5.1", + "sonata-project/block-bundle": "^4.21 || ^5.0", "sonata-project/form-extensions": "^1.19 || ^2.0", "symfony/dependency-injection": "^5.4 || ^6.2", "symfony/event-dispatcher": "^5.4 || ^6.2", diff --git a/src/Block/Service/GDPRInformationBlockService.php b/src/Block/Service/GDPRInformationBlockService.php index 5215fc05..857d4787 100644 --- a/src/Block/Service/GDPRInformationBlockService.php +++ b/src/Block/Service/GDPRInformationBlockService.php @@ -13,7 +13,6 @@ namespace Nucleos\GDPRBundle\Block\Service; -use LogicException; use Sonata\BlockBundle\Block\BlockContextInterface; use Sonata\BlockBundle\Block\Service\AbstractBlockService; use Sonata\BlockBundle\Block\Service\EditableBlockService; @@ -56,11 +55,11 @@ public function execute(BlockContextInterface $blockContext, ?Response $response 'block' => $blockContext->getBlock(), ]; - if (!\is_string($blockContext->getTemplate())) { - throw new LogicException('Cannot render block without template'); - } - - return $this->renderPrivateResponse($blockContext->getTemplate(), $parameters, $response); + return $this + ->renderResponse($blockContext->getTemplate(), $parameters, $response) + ->setTtl(0) + ->setPrivate() + ; } public function configureCreateForm(FormMapper $form, BlockInterface $block): void diff --git a/tests/Block/Service/GDPRInformationBlockServiceTest.php b/tests/Block/Service/GDPRInformationBlockServiceTest.php index b34362dd..edbb92aa 100644 --- a/tests/Block/Service/GDPRInformationBlockServiceTest.php +++ b/tests/Block/Service/GDPRInformationBlockServiceTest.php @@ -13,7 +13,6 @@ namespace Nucleos\GDPRBundle\Tests\Block\Service; -use LogicException; use Nucleos\GDPRBundle\Block\Service\GDPRInformationBlockService; use PHPUnit\Framework\MockObject\MockObject; use Sonata\BlockBundle\Block\BlockContext; @@ -89,23 +88,6 @@ public function testExecute(): void static::assertSame('TWIG_CONTENT', $response->getContent()); } - public function testExecuteWithNullTemplate(): void - { - $this->expectException(LogicException::class); - $this->expectExceptionMessage('Cannot render block without template'); - - $block = new Block(); - - $blockContext = new BlockContext($block, [ - 'template' => null, - ]); - - $response = new Response(); - - $blockService = new GDPRInformationBlockService($this->twig, $this->requestStack); - $blockService->execute($blockContext, $response); - } - public function testExecuteWithExistingCookie(): void { $this->request->cookies->set(GDPRInformationBlockService::COOKIE_NAME, 'true');