function ThemeInstallerTest::testUninstallBaseBeforeSubTheme in Zircon Profile 8
Same name and namespace in other branches
- 8.0 core/modules/system/src/Tests/Extension/ThemeInstallerTest.php \Drupal\system\Tests\Extension\ThemeInstallerTest::testUninstallBaseBeforeSubTheme()
Tests uninstalling a base theme before its sub-theme.
File
- core/
modules/ system/ src/ Tests/ Extension/ ThemeInstallerTest.php, line 215 - Contains \Drupal\system\Tests\Extension\ThemeInstallerTest.
Class
- ThemeInstallerTest
- Tests installing and uninstalling of themes.
Namespace
Drupal\system\Tests\ExtensionCode
function testUninstallBaseBeforeSubTheme() {
$name = 'test_basetheme';
$sub_name = 'test_subtheme';
$this
->themeInstaller()
->install(array(
$sub_name,
));
try {
$message = 'ThemeHandler::install() throws InvalidArgumentException upon uninstalling base theme before sub theme.';
$this
->themeInstaller()
->uninstall(array(
$name,
));
$this
->fail($message);
} catch (\InvalidArgumentException $e) {
$this
->pass(get_class($e) . ': ' . $e
->getMessage());
}
$themes = $this
->themeHandler()
->listInfo();
$this
->assertTrue(isset($themes[$name]));
$this
->assertTrue(isset($themes[$sub_name]));
// Verify that uninstalling both at the same time works.
$this
->themeInstaller()
->uninstall(array(
$name,
$sub_name,
));
$themes = $this
->themeHandler()
->listInfo();
$this
->assertFalse(isset($themes[$name]));
$this
->assertFalse(isset($themes[$sub_name]));
}