You are here

public function GenerateThemeTest::testStarterKitFlag in Drupal 10

Tests that only themes with `starterkit` flag can be used.

File

core/tests/Drupal/Tests/Core/Command/GenerateThemeTest.php, line 287

Class

GenerateThemeTest
Tests the generate-theme commands.

Namespace

Drupal\Tests\Core\Command

Code

public function testStarterKitFlag() : void {

  // Explicitly not a starter theme.
  $install_command = [
    $this->php,
    'core/scripts/drupal',
    'generate-theme',
    'test_custom_theme',
    '--name="Test custom starterkit theme"',
    '--description="Custom theme generated from a starterkit theme"',
    '--starterkit',
    'stark',
  ];
  $process = new Process($install_command, NULL);
  $process
    ->setTimeout(60);
  $result = $process
    ->run();
  $this
    ->assertStringContainsString('Theme source theme stark is not a valid starter kit.', trim($process
    ->getErrorOutput()));
  $this
    ->assertSame(1, $result);

  // Has not defined `starterkit`.
  $install_command = [
    $this->php,
    'core/scripts/drupal',
    'generate-theme',
    'test_custom_theme',
    '--name="Test custom starterkit theme"',
    '--description="Custom theme generated from a starterkit theme"',
    '--starterkit',
    'olivero',
  ];
  $process = new Process($install_command, NULL);
  $process
    ->setTimeout(60);
  $result = $process
    ->run();
  $this
    ->assertStringContainsString('Theme source theme olivero is not a valid starter kit.', trim($process
    ->getErrorOutput()));
  $this
    ->assertSame(1, $result);
}