Skip to content

Commit 01abe68

Browse files
committed
[TASK] Acceptance Tests v14
1 parent a6d5973 commit 01abe68

File tree

12 files changed

+228
-189
lines changed

12 files changed

+228
-189
lines changed

.github/workflows/ci.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,9 @@ jobs:
5757
- name: Acceptance Tests
5858
run: Build/Scripts/runTests.sh -p ${{ matrix.php }} -t ${{ matrix.TYPO3 }} -s acceptance -- --fail-fast
5959
if: matrix.TYPO3 != '14'
60-
60+
- name: Acceptance Tests 14
61+
run: Build/Scripts/runTests.sh -p ${{ matrix.php }} -t ${{ matrix.TYPO3 }} -s acceptance -- --fail-fast --skip-group=content_defender
62+
if: matrix.TYPO3 == '14'
6163
- name: Archive acceptance tests results
6264
uses: actions/upload-artifact@v4
6365
if: always()

Build/Scripts/runTests.sh

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -343,6 +343,7 @@ while getopts "a:b:s:d:i:t:p:xy:o:nhug" OPT; do
343343
fi
344344
# @todo Remove USE_APACHE option when TF7 has been dropped (along with TYPO3 v11 support).
345345
[[ "${TYPO3}" -eq 13 ]] && USE_APACHE=1
346+
[[ "${TYPO3}" -eq 14 ]] && USE_APACHE=1
346347
;;
347348
p)
348349
PHP_VERSION=${OPTARG}
@@ -600,7 +601,7 @@ case ${TEST_SUITE} in
600601
composer require typo3/cms-core:^11.5 ichhabrecht/content-defender --dev -W --no-progress --no-interaction
601602
composer prepare-tests
602603
elif [ ${TYPO3} -eq 13 ]; then
603-
composer require typo3/cms-core:^13.4 typo3/testing-framework:^8.2 phpunit/phpunit:^10.5 ichhabrecht/content-defender --dev -W --no-progress --no-interaction
604+
composer require typo3/cms-core:^13.4 typo3/testing-framework:^9 phpunit/phpunit:^11 ichhabrecht/content-defender --dev -W --no-progress --no-interaction
604605
composer prepare-tests
605606
elif [ ${TYPO3} -eq 14 ]; then
606607
composer require typo3/cms-core:^14.0 --dev -W --no-progress --no-interaction

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -226,8 +226,8 @@ See Tests/README.md on how to run the tests locally (like how github-actions run
226226

227227
To assure coding guidelines are fullfilled:
228228

229-
- run ``.Build/bin/phpstan analyse -c Build/phpstan10.neon``
230-
- run ``.Build/bin/php-cs-fixer fix --config=Build/php-cs-fixer.php --dry-run --stop-on-violation --using-cache=no``
229+
- run ``php -d memory_limit=2G .Build/bin/phpstan analyse -c Build/phpstan14.neon``
230+
- run ``php -d memory_limit=2G .Build/bin/php-cs-fixer fix --config=Build/php-cs-fixer.php --dry-run --stop-on-violation --using-cache=no``
231231

232232
## Credits
233233

Tests/Acceptance/Backend/ContentDefenderCest.php

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ public function _before(BackendTester $I)
3333
*/
3434
public function canCreateChildIn2ColsContainerWithNoContentDefenderRestrictionsDefined(BackendTester $I, PageTree $pageTree, PageTreeV13 $pageTreeV13): void
3535
{
36-
$I->click('Page');
36+
$I->clickLayoutModuleButton();
3737
if (GeneralUtility::makeInstance(Typo3Version::class)->getMajorVersion() < 13) {
3838
$I->waitForElement('#typo3-pagetree-tree .nodes .node');
3939
$pageTree->openPath(['home', 'pageWithDifferentContainers']);
@@ -46,7 +46,7 @@ public function canCreateChildIn2ColsContainerWithNoContentDefenderRestrictionsD
4646
$colPosSelector = '#element-tt_content-300 [data-colpos="' . $dataColPos . '"]';
4747
$I->clickNewContentElement($colPosSelector);
4848
$I->switchToIFrame();
49-
$I->waitForElement('.modal-dialog');
49+
$I->waitForModal();
5050
if (GeneralUtility::makeInstance(Typo3Version::class)->getMajorVersion() > 12) {
5151
$I->executeJS("document.querySelector('" . $I->getNewRecordWizardSelector() . "').shadowRoot.querySelector('button[data-identifier=\"default\"]').click()");
5252
}
@@ -60,7 +60,7 @@ public function canCreateChildIn2ColsContainerWithNoContentDefenderRestrictionsD
6060
*/
6161
public function doNotSeeNotAllowedContentElementsInNewContentElementWizard(BackendTester $I, PageTree $pageTree, PageTreeV13 $pageTreeV13): void
6262
{
63-
$I->click('Page');
63+
$I->clickLayoutModuleButton();
6464
if (GeneralUtility::makeInstance(Typo3Version::class)->getMajorVersion() < 13) {
6565
$I->waitForElement('#typo3-pagetree-tree .nodes .node');
6666
$pageTree->openPath(['home', 'pageWithContainer-3']);
@@ -73,7 +73,7 @@ public function doNotSeeNotAllowedContentElementsInNewContentElementWizard(Backe
7373
$colPosSelector = '#element-tt_content-800 [data-colpos="' . $dataColPos . '"]';
7474
$I->clickNewContentElement($colPosSelector);
7575
$I->switchToIFrame();
76-
$I->waitForElement('.modal-dialog');
76+
$I->waitForModal();
7777
if (GeneralUtility::makeInstance(Typo3Version::class)->getMajorVersion() > 12) {
7878
$I->executeJS("document.querySelector('" . $I->getNewRecordWizardSelector() . "').shadowRoot.querySelector('button[data-identifier=\"default\"]').click()");
7979
}
@@ -86,7 +86,7 @@ public function doNotSeeNotAllowedContentElementsInNewContentElementWizard(Backe
8686
*/
8787
public function doNotSeeNotAllowedContentElementsInNewContentElementWizardTriggeredByContextMenu(BackendTester $I, PageTree $pageTree, PageTreeV13 $pageTreeV13): void
8888
{
89-
$I->click('Page');
89+
$I->clickLayoutModuleButton();
9090
if (GeneralUtility::makeInstance(Typo3Version::class)->getMajorVersion() < 13) {
9191
$I->waitForElement('#typo3-pagetree-tree .nodes .node');
9292
$pageTree->openPath(['home', 'pageWithContainer-3']);
@@ -127,7 +127,7 @@ public function doNotSeeNotAllowedContentElementsInNewContentElementWizardTrigge
127127
}
128128

129129
$I->switchToIFrame();
130-
$I->waitForElement('.modal-dialog');
130+
$I->waitForModal();
131131
if (GeneralUtility::makeInstance(Typo3Version::class)->getMajorVersion() > 12) {
132132
$I->executeJS("document.querySelector('" . $I->getNewRecordWizardSelector() . "').shadowRoot.querySelector('button[data-identifier=\"default\"]').click()");
133133
}
@@ -140,7 +140,7 @@ public function doNotSeeNotAllowedContentElementsInNewContentElementWizardTrigge
140140
*/
141141
public function doNotSeeNotAllowedContentElementsInCTypeSelectBoxWhenCreateNewElement(BackendTester $I, PageTree $pageTree, PageTreeV13 $pageTreeV13)
142142
{
143-
$I->click('Page');
143+
$I->clickLayoutModuleButton();
144144
if (GeneralUtility::makeInstance(Typo3Version::class)->getMajorVersion() < 13) {
145145
$I->waitForElement('#typo3-pagetree-tree .nodes .node');
146146
$pageTree->openPath(['home', 'pageWithContainer-4']);
@@ -153,7 +153,7 @@ public function doNotSeeNotAllowedContentElementsInCTypeSelectBoxWhenCreateNewEl
153153
$colPosSelector = '#element-tt_content-801 [data-colpos="' . $dataColPos . '"]';
154154
$I->clickNewContentElement($colPosSelector);
155155
$I->switchToIFrame();
156-
$I->waitForElement('.modal-dialog');
156+
$I->waitForModal();
157157
if (GeneralUtility::makeInstance(Typo3Version::class)->getMajorVersion() > 12) {
158158
$I->executeJS("document.querySelector('" . $I->getNewRecordWizardSelector() . "').shadowRoot.querySelector('button[data-identifier=\"default\"]').click()");
159159
}
@@ -179,7 +179,7 @@ public function doNotSeeNotAllowedContentElementsInCTypeSelectBoxWhenCreateNewEl
179179
*/
180180
public function doNotSeeNotAllowedContentElementsInCTypeSelectBoxWhenEditAnElement(BackendTester $I, PageTree $pageTree, PageTreeV13 $pageTreeV13)
181181
{
182-
$I->click('Page');
182+
$I->clickLayoutModuleButton();
183183
if (GeneralUtility::makeInstance(Typo3Version::class)->getMajorVersion() < 13) {
184184
$I->waitForElement('#typo3-pagetree-tree .nodes .node');
185185
$pageTree->openPath(['home', 'contentTCASelectCtype']);
@@ -200,7 +200,7 @@ public function doNotSeeNotAllowedContentElementsInCTypeSelectBoxWhenEditAnEleme
200200
*/
201201
public function canSeeNewContentButtonIfMaxitemsIsNotReached(BackendTester $I, PageTree $pageTree, PageTreeV13 $pageTreeV13)
202202
{
203-
$I->click('Page');
203+
$I->clickLayoutModuleButton();
204204
if (GeneralUtility::makeInstance(Typo3Version::class)->getMajorVersion() < 13) {
205205
$I->waitForElement('#typo3-pagetree-tree .nodes .node');
206206
$pageTree->openPath(['home', 'contentDefenderMaxitems']);
@@ -219,7 +219,7 @@ public function canSeeNewContentButtonIfMaxitemsIsNotReached(BackendTester $I, P
219219
*/
220220
public function canNotSeeNewContentButtonIfMaxitemsIsReached(BackendTester $I, PageTree $pageTree, PageTreeV13 $pageTreeV13)
221221
{
222-
$I->click('Page');
222+
$I->clickLayoutModuleButton();
223223
if (GeneralUtility::makeInstance(Typo3Version::class)->getMajorVersion() < 13) {
224224
$I->waitForElement('#typo3-pagetree-tree .nodes .node');
225225
$pageTree->openPath(['home', 'contentDefenderMaxitems']);
@@ -239,7 +239,7 @@ public function canNotSeeNewContentButtonIfMaxitemsIsReached(BackendTester $I, P
239239
*/
240240
public function canCreateNewChildInContainerIfMaxitemsIsReachedInOtherContainer(BackendTester $I, PageTree $pageTree, PageTreeV13 $pageTreeV13)
241241
{
242-
$I->click('Page');
242+
$I->clickLayoutModuleButton();
243243
if (GeneralUtility::makeInstance(Typo3Version::class)->getMajorVersion() < 13) {
244244
$I->waitForElement('#typo3-pagetree-tree .nodes .node');
245245
$pageTree->openPath(['home', 'contentDefenderMaxitems']);
@@ -252,7 +252,7 @@ public function canCreateNewChildInContainerIfMaxitemsIsReachedInOtherContainer(
252252
$colPosSelector = '#element-tt_content-402 [data-colpos="' . $dataColPos . '"]';
253253
$I->clickNewContentElement($colPosSelector);
254254
$I->switchToIFrame();
255-
$I->waitForElement('.modal-dialog');
255+
$I->waitForModal();
256256
if (GeneralUtility::makeInstance(Typo3Version::class)->getMajorVersion() > 12) {
257257
$I->executeJS("document.querySelector('" . $I->getNewRecordWizardSelector() . "').shadowRoot.querySelector('button[data-identifier=\"default\"]').click()");
258258
}
@@ -277,7 +277,7 @@ public function canCreateNewChildInContainerIfMaxitemsIsReachedInOtherContainer(
277277
*/
278278
public function seeEditDocumentWhenAddingChildrenToColposWhereOnlyHeaderIsAllowed(BackendTester $I, PageTree $pageTree, PageTreeV13 $pageTreeV13)
279279
{
280-
$I->click('Page');
280+
$I->clickLayoutModuleButton();
281281
if (GeneralUtility::makeInstance(Typo3Version::class)->getMajorVersion() < 13) {
282282
$I->waitForElement('#typo3-pagetree-tree .nodes .node');
283283
$pageTree->openPath(['home', 'pageWithDifferentContainers']);

Tests/Acceptance/Backend/EditorLayoutCest.php

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,6 @@
1515
use B13\Container\Tests\Acceptance\Support\BackendTester;
1616
use B13\Container\Tests\Acceptance\Support\PageTree;
1717
use B13\Container\Tests\Acceptance\Support\PageTreeV13;
18-
use TYPO3\CMS\Core\Information\Typo3Version;
19-
use TYPO3\CMS\Core\Utility\GeneralUtility;
2018

2119
class EditorLayoutCest
2220
{
@@ -30,8 +28,8 @@ public function _before(BackendTester $I)
3028

3129
public function canSeeNewContentButton(BackendTester $I, PageTree $pageTree, PageTreeV13 $pageTreeV13)
3230
{
33-
$I->click('Page');
34-
if (GeneralUtility::makeInstance(Typo3Version::class)->getMajorVersion() < 13) {
31+
$I->clickLayoutModuleButton();
32+
if ($I->getTypo3MajorVersion() < 13) {
3533
$I->waitForElement('#typo3-pagetree-tree .nodes .node');
3634
$pageTree->openPath(['home', 'pageWithContainer-5']);
3735
} else {

Tests/Acceptance/Backend/InfoModuleCest.php

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,6 @@
1515
use B13\Container\Tests\Acceptance\Support\BackendTester;
1616
use B13\Container\Tests\Acceptance\Support\PageTree;
1717
use Codeception\Scenario;
18-
use TYPO3\CMS\Core\Information\Typo3Version;
1918

2019
class InfoModuleCest
2120
{
@@ -29,8 +28,7 @@ public function _before(BackendTester $I)
2928

3029
public function canSeeContainerPageTsConfig(BackendTester $I, PageTree $pageTree, Scenario $scenario)
3130
{
32-
$typo3Version = new Typo3Version();
33-
if ($typo3Version->getMajorVersion() >= 12) {
31+
if ($I->getTypo3MajorVersion() >= 12) {
3432
$scenario->skip('PageTsConfigModuleCest is used');
3533
}
3634
$I->click('Info');

0 commit comments

Comments
 (0)