‪TYPO3CMS  ‪main
DashboardModuleCest.php
Go to the documentation of this file.
1 <?php
2 
3 declare(strict_types=1);
4 
5 /*
6  * This file is part of the TYPO3 CMS project.
7  *
8  * It is free software; you can redistribute it and/or modify it under
9  * the terms of the GNU General Public License, either version 2
10  * of the License, or any later version.
11  *
12  * For the full copyright and license information, please read the
13  * LICENSE.txt file that was distributed with this source code.
14  *
15  * The TYPO3 project - inspiring people to share!
16  */
17 
19 
22 
27 {
28  private static string ‪$defaultDashboardTitle = 'My Dashboard';
29  private static string ‪$customDashboardTitle = 'My Custom Dashboard';
30  private static string ‪$dashboardActiveSelector = '.dashboard-tab--active';
31  private static string ‪$widgetTitle = 'Type of backend users';
32  private static string ‪$widgetTitleSelector = '.widget-content-title';
33 
34  public function ‪_before(‪ApplicationTester $I): void
35  {
36  $I->useExistingSession('admin');
37  $I->click('[data-modulemenu-identifier="dashboard"]');
38  $I->switchToContentFrame();
39  }
40 
42  {
43  $I->see(self::$defaultDashboardTitle, self::$dashboardActiveSelector);
44  $I->see('About TYPO3', self::$widgetTitleSelector);
45  $I->see('Getting Started with TYPO3', self::$widgetTitleSelector);
46  }
47 
49  {
50  // Create Dashboard
51  $I->click('.dashboard-button-tab-add');
52  $modalDialog->‪canSeeDialog();
53  $I->fillField('#dashboardModalAdd-title', self::$customDashboardTitle);
54  $I->click('button[name="save"]', ‪ModalDialog::$openedModalButtonContainerSelector);
55  $I->switchToContentFrame();
56  $I->see(self::$customDashboardTitle, self::$dashboardActiveSelector);
57 
58  // Add widget
59  $I->waitForElementVisible('.js-dashboard-addWidget');
60  $I->click('.js-dashboard-addWidget');
61  $modalDialog->‪canSeeDialog();
62  $I->click('#dashboard-widgetgroup-tab-systemInfo');
63  $I->click(self::$widgetTitle, ‪ModalDialog::$openedModalSelector);
64  $I->switchToContentFrame();
65  $I->see(self::$widgetTitle, self::$widgetTitleSelector);
66  }
67 
71  public function ‪deleteDashboardAndWidgets(‪ApplicationTester $I, ‪ModalDialog $modalDialog): void
72  {
73  // Delete widget
74  $I->click(self::$customDashboardTitle, '.dashboard-tabs');
75  $I->waitForElementVisible('div[data-widget-key="typeOfUsers"] .widget-content-title');
76  $I->click('.js-dashboard-remove-widget');
77  $modalDialog->‪canSeeDialog();
78  $I->click('button[name="delete"]', ‪ModalDialog::$openedModalButtonContainerSelector);
79  $I->switchToContentFrame();
80  $I->seeElement('.dashboard-empty-content');
81 
82  // Delete custom dashboard
83  $I->click('.js-dashboard-delete');
84  $modalDialog->‪canSeeDialog();
85  $I->click('button[name="delete"]', ‪ModalDialog::$openedModalButtonContainerSelector);
86  $I->dontSee(self::$customDashboardTitle, self::$dashboardActiveSelector);
87  }
88 }
‪TYPO3\CMS\Core\Tests\Acceptance\Support\Helper\ModalDialog\$openedModalSelector
‪static string $openedModalSelector
Definition: ModalDialog.php:30
‪TYPO3\CMS\Core\Tests\Acceptance\Application\Dashboard\DashboardModuleCest\seeInitialDashboardAndWidgets
‪seeInitialDashboardAndWidgets(ApplicationTester $I)
Definition: DashboardModuleCest.php:41
‪TYPO3\CMS\Core\Tests\Acceptance\Application\Dashboard\DashboardModuleCest\$dashboardActiveSelector
‪static string $dashboardActiveSelector
Definition: DashboardModuleCest.php:30
‪TYPO3\CMS\Core\Tests\Acceptance\Application\Dashboard\DashboardModuleCest\$widgetTitleSelector
‪static string $widgetTitleSelector
Definition: DashboardModuleCest.php:32
‪TYPO3\CMS\Core\Tests\Acceptance\Application\Dashboard\DashboardModuleCest\createCustomDashboardAndWidgets
‪createCustomDashboardAndWidgets(ApplicationTester $I, ModalDialog $modalDialog)
Definition: DashboardModuleCest.php:48
‪TYPO3\CMS\Core\Tests\Acceptance\Support\ApplicationTester
Definition: ApplicationTester.php:28
‪TYPO3\CMS\Core\Tests\Acceptance\Application\Dashboard\DashboardModuleCest\$defaultDashboardTitle
‪static string $defaultDashboardTitle
Definition: DashboardModuleCest.php:28
‪TYPO3\CMS\Core\Tests\Acceptance\Support\Helper\ModalDialog\$openedModalButtonContainerSelector
‪static string $openedModalButtonContainerSelector
Definition: ModalDialog.php:37
‪TYPO3\CMS\Core\Tests\Acceptance\Application\Dashboard\DashboardModuleCest\$customDashboardTitle
‪static string $customDashboardTitle
Definition: DashboardModuleCest.php:29
‪TYPO3\CMS\Core\Tests\Acceptance\Application\Dashboard\DashboardModuleCest\_before
‪_before(ApplicationTester $I)
Definition: DashboardModuleCest.php:34
‪TYPO3\CMS\Core\Tests\Acceptance\Application\Dashboard\DashboardModuleCest\deleteDashboardAndWidgets
‪deleteDashboardAndWidgets(ApplicationTester $I, ModalDialog $modalDialog)
Definition: DashboardModuleCest.php:71
‪TYPO3\CMS\Core\Tests\Acceptance\Support\Helper\ModalDialog\canSeeDialog
‪canSeeDialog()
Definition: ModalDialog.php:68
‪TYPO3\CMS\Core\Tests\Acceptance\Application\Dashboard\DashboardModuleCest
Definition: DashboardModuleCest.php:27
‪TYPO3\CMS\Core\Tests\Acceptance\Application\Dashboard\DashboardModuleCest\$widgetTitle
‪static string $widgetTitle
Definition: DashboardModuleCest.php:31
‪TYPO3\CMS\Core\Tests\Acceptance\Application\Dashboard
Definition: DashboardModuleCest.php:18
‪TYPO3\CMS\Core\Tests\Acceptance\Support\Helper\ModalDialog
Definition: ModalDialog.php:24