From bf153582fa43785e027cdc70a69be47a7cb57604 Mon Sep 17 00:00:00 2001 From: Eike Starkmann Date: Wed, 31 Jul 2024 14:33:08 +0200 Subject: [PATCH] [TASK] Add functional tests for showAction Fixes #1228 --- .../Database/ContentElementTeaIndex.csv | 1 + .../Fixtures/Database/SiteStructure.csv | 1 + .../Controller/TeaControllerTest.php | 27 ++++++++++++++++--- 3 files changed, 26 insertions(+), 3 deletions(-) diff --git a/Tests/Functional/Controller/Fixtures/Database/ContentElementTeaIndex.csv b/Tests/Functional/Controller/Fixtures/Database/ContentElementTeaIndex.csv index 0fe9c69..39af4b1 100644 --- a/Tests/Functional/Controller/Fixtures/Database/ContentElementTeaIndex.csv +++ b/Tests/Functional/Controller/Fixtures/Database/ContentElementTeaIndex.csv @@ -1,3 +1,4 @@ "tt_content" ,"uid","pid","CType","header","list_type" ,1,1,"list","Tea index","tea_teaindex" +,2,3,"list","Tea show","tea_teashow" diff --git a/Tests/Functional/Controller/Fixtures/Database/SiteStructure.csv b/Tests/Functional/Controller/Fixtures/Database/SiteStructure.csv index f664e49..ce6f70a 100644 --- a/Tests/Functional/Controller/Fixtures/Database/SiteStructure.csv +++ b/Tests/Functional/Controller/Fixtures/Database/SiteStructure.csv @@ -2,3 +2,4 @@ ,"uid","pid","title","slug" ,1,0,"Rootpage","/" ,2,1,"Storage","/storage" +,3,1,"Show","/show" diff --git a/Tests/Functional/Controller/TeaControllerTest.php b/Tests/Functional/Controller/TeaControllerTest.php index e4c1334..3d006de 100644 --- a/Tests/Functional/Controller/TeaControllerTest.php +++ b/Tests/Functional/Controller/TeaControllerTest.php @@ -4,6 +4,7 @@ declare(strict_types=1); namespace TTN\Tea\Tests\Functional\Controller; +use TYPO3\CMS\Core\Utility\ArrayUtility; use TYPO3\TestingFramework\Core\Functional\Framework\Frontend\InternalRequest; use TYPO3\TestingFramework\Core\Functional\FunctionalTestCase; @@ -22,6 +23,14 @@ final class TeaControllerTest extends FunctionalTestCase protected function setUp(): void { + ArrayUtility::mergeRecursiveWithOverrule($this->configurationToUseInTestInstance, [ + 'FE' => [ + 'cacheHash' => [ + 'enforceValidation' => false, + ], + ] + ]); + parent::setUp(); $this->importCSVDataSet(__DIR__ . '/Fixtures/Database/SiteStructure.csv'); @@ -37,6 +46,8 @@ final class TeaControllerTest extends FunctionalTestCase 'EXT:tea/Tests/Functional/Controller/Fixtures/TypoScript/Setup/Rendering.typoscript', ], ]); + $this->importCSVDataSet(__DIR__ . '/Fixtures/Database/ContentElementTeaIndex.csv'); + $this->importCSVDataSet(__DIR__ . '/Fixtures/Database/Teas.csv'); } /** @@ -44,9 +55,6 @@ final class TeaControllerTest extends FunctionalTestCase */ public function indexActionRendersAllAvailableTeas(): void { - $this->importCSVDataSet(__DIR__ . '/Fixtures/Database/ContentElementTeaIndex.csv'); - $this->importCSVDataSet(__DIR__ . '/Fixtures/Database/Teas.csv'); - $request = (new InternalRequest())->withPageId(1); $html = (string)$this->executeFrontendSubRequest($request)->getBody(); @@ -54,4 +62,17 @@ final class TeaControllerTest extends FunctionalTestCase self::assertStringContainsString('Godesberger Burgtee', $html); self::assertStringContainsString('Oolong', $html); } + + /** + * @test + */ + public function showActionRendersTheGivenTeas(): void + { + $request = (new InternalRequest())->withPageId(1)->withQueryParameters(["tx_tea_teashow[tea]" => 1]); + + $html = (string)$this->executeFrontendSubRequest($request)->getBody(); + + self::assertStringContainsString('Godesberger Burgtee', $html); + self::assertStringNotContainsString('Oolong', $html); + } }