gin_toolbar_custom_menu-1.0.0/tests/src/Functional/GinToolbarCustomMenuInstallTest.php

tests/src/Functional/GinToolbarCustomMenuInstallTest.php
<?php

namespace Drupal\Tests\gin_toolbar_custom_menu\Functional;

use Drupal\Tests\BrowserTestBase;

/**
 * Tests gin_toolbar_custom_menu Install / Uninstall logic.
 */
class GinToolbarCustomMenuInstallTest extends BrowserTestBase {

  /**
   * Set default theme to stable.
   *
   * @var string
   */
  protected $defaultTheme = 'stark';

  /**
   * Modules to enable.
   *
   * @var array
   */
  protected static $modules = [
    'toolbar',
    'breakpoint',
    'menu_ui',
  ];

  /**
   * {@inheritdoc}
   */
  protected function setUp(): void {
    parent::setUp();

    $this->assertTrue(\Drupal::service('theme_installer')->install(['gin']));
    $this->container->get('module_installer')->install(['gin_toolbar'], FALSE);
    $this->container->get('config.factory')
      ->getEditable('system.theme')
      ->set('default', 'gin')
      ->set('admin', 'gin')
      ->save();
    $this->container->get('module_installer')->install(['gin_toolbar_custom_menu'], FALSE);
    $this->drupalLogin($this->drupalCreateUser(['administer modules']));
  }

  /**
   * Tests reinstalling after being uninstalled.
   */
  public function testReinstallAfterUninstall(): void {
    $page = $this->getSession()->getPage();
    $assert_session = $this->assertSession();

    $this->drupalGet('/admin/modules/uninstall');
    $page->checkField('uninstall[gin_toolbar_custom_menu]');
    $page->pressButton('Uninstall');
    $assert_session->pageTextContains('The following modules will be completely uninstalled from your site');
    $page->pressButton('Uninstall');
    $assert_session->pageTextContains('The selected modules have been uninstalled.');

    $this->drupalGet('/admin/modules');
    $page->checkField('modules[gin_toolbar_custom_menu][enable]');
    $page->pressButton('Install');
    $assert_session->pageTextContains('Module Gin Toolbar Custom Menu has been installed.');
  }

}

Главная | Обратная связь

drupal hosting | друпал хостинг | it patrol .inc