MaintenanceThemeTest.php 883 B

123456789101112131415161718192021222324252627282930313233
  1. <?php
  2. namespace Drupal\KernelTests\Core\Theme;
  3. use Drupal\KernelTests\KernelTestBase;
  4. /**
  5. * Tests themes and base themes are correctly loaded.
  6. *
  7. * @group Installer
  8. */
  9. class MaintenanceThemeTest extends KernelTestBase {
  10. /**
  11. * Tests that the maintenance theme initializes the theme and its base themes.
  12. */
  13. public function testMaintenanceTheme() {
  14. $this->setSetting('maintenance_theme', 'seven');
  15. // Get the maintenance theme loaded.
  16. drupal_maintenance_theme();
  17. // Do we have an active theme?
  18. $this->assertTrue(\Drupal::theme()->hasActiveTheme());
  19. $active_theme = \Drupal::theme()->getActiveTheme();
  20. $this->assertEquals('seven', $active_theme->getName());
  21. $base_themes = $active_theme->getBaseThemeExtensions();
  22. $base_theme_names = array_keys($base_themes);
  23. $this->assertSame(['classy', 'stable'], $base_theme_names);
  24. }
  25. }