test_helpers-1.0.0-alpha6/tests/src/Unit/Stub/LanguageDefaultStubTest.php

tests/src/Unit/Stub/LanguageDefaultStubTest.php
<?php

declare(strict_types=1);

namespace Drupal\Tests\test_helpers\Unit\Stub;

use Drupal\Core\Language\Language;
use Drupal\Core\Language\LanguageManager;
use Drupal\test_helpers\Stub\ConfigurableLanguageManagerStub;
use Drupal\Tests\UnitTestCase;
use Drupal\test_helpers\Stub\LanguageDefaultStub;
use Drupal\test_helpers\TestHelpers;
use PHPUnit\Framework\Attributes\CoversClass;
use PHPUnit\Framework\Attributes\CoversMethod;
use PHPUnit\Framework\Attributes\Group;

/**
 * Tests LanguageDefaultStub class.
 */
#[CoversClass(ConfigurableLanguageManagerStub::class)]
#[CoversClass(LanguageDefaultStub::class)]
#[Group('test_helpers')]
#[CoversMethod(ConfigurableLanguageManagerStub::class, '__construct')]
#[CoversMethod(ConfigurableLanguageManagerStub::class, 'stubAddLanguage')]
#[CoversMethod(ConfigurableLanguageManagerStub::class, 'getCurrentLanguage')]
#[CoversMethod(LanguageDefaultStub::class, 'set')]
#[CoversMethod(LanguageDefaultStub::class, 'stubSetByCode')]
class LanguageDefaultStubTest extends UnitTestCase {

  /**
   * Tests the LanguageDefaultStub methods.
   */
  public function testStub() {
    /** @var \Drupal\test_helpers\Stub\LanguageDefaultStub $stub */
    $stub = TestHelpers::service('language.default');
    $languageManager = TestHelpers::service('language_manager');

    $this->assertInstanceOf(LanguageDefaultStub::class, $stub);
    $this->assertEquals('en', $stub->get()->getId());
    $this->assertEquals('en', $languageManager->getCurrentLanguage()->getId());

    $stub->stubSetByCode('fr');
    $this->assertEquals('fr', $stub->get()->getId());
    $this->assertEquals('fr', $languageManager->getCurrentLanguage()->getId());

    $stub->set(new Language([
      'id' => 'de',
      // In a configuration record the 'label' term is used instead of 'name'.
      'label' => LanguageManager::getStandardLanguageList()['de'][0],
    ]));
    $this->assertEquals('de', $stub->get()->getId());
    $this->assertEquals('de', $languageManager->getCurrentLanguage()->getId());
  }

}

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

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