function ThemeUiTest::assertUninstallableTheme
Same name in other branches
- 9 core/modules/system/tests/src/Functional/Theme/ThemeUiTest.php \Drupal\Tests\system\Functional\Theme\ThemeUiTest::assertUninstallableTheme()
- 8.9.x core/modules/system/tests/src/Functional/Theme/ThemeUiTest.php \Drupal\Tests\system\Functional\Theme\ThemeUiTest::assertUninstallableTheme()
- 11.x core/modules/system/tests/src/Functional/Theme/ThemeUiTest.php \Drupal\Tests\system\Functional\Theme\ThemeUiTest::assertUninstallableTheme()
Checks related to uninstallable themes due to module dependencies.
@internal
Parameters
string[] $expected_requires_list_items: The modules listed as being required to install the theme.
string $theme_name: The name of the theme.
1 call to ThemeUiTest::assertUninstallableTheme()
- ThemeUiTest::testThemeInstallWithModuleDependencies in core/
modules/ system/ tests/ src/ Functional/ Theme/ ThemeUiTest.php - Tests installing a theme with module dependencies.
File
-
core/
modules/ system/ tests/ src/ Functional/ Theme/ ThemeUiTest.php, line 295
Class
- ThemeUiTest
- Tests the theme UI.
Namespace
Drupal\Tests\system\Functional\ThemeCode
protected function assertUninstallableTheme(array $expected_requires_list_items, string $theme_name) : void {
$theme_container = $this->getSession()
->getPage()
->find('css', "h3:contains(\"{$theme_name}\")")
->getParent();
$requires_list_items = $theme_container->findAll('css', '.theme-info__requires li');
$this->assertSameSize($expected_requires_list_items, $requires_list_items);
foreach ($requires_list_items as $key => $item) {
$this->assertContains($item->getText(), $expected_requires_list_items);
}
$incompatible = $theme_container->find('css', '.incompatible');
$expected_incompatible_text = 'This theme requires the listed modules to operate correctly. They must first be installed via the Extend page.';
$this->assertSame($expected_incompatible_text, $incompatible->getText());
$this->assertFalse($theme_container->hasLink('Install Test Theme Depending on Modules theme'));
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.