InstallerLanguageTest.php

Definition of Drupal\system\Tests\Common\InstallerLanguageTest.

Namespace

Drupal\system\Tests\Common

File

drupal/core/modules/system/lib/Drupal/system/Tests/Common/InstallerLanguageTest.php
View source
<?php

/**
 * @file
 * Definition of Drupal\system\Tests\Common\InstallerLanguageTest.
 */
namespace Drupal\system\Tests\Common;

use Drupal\simpletest\WebTestBase;

/**
 * Tests installer language detection.
 */
class InstallerLanguageTest extends WebTestBase {
  public static function getInfo() {
    return array(
      'name' => 'Installer language tests',
      'description' => 'Tests for installer language support.',
      'group' => 'Installer',
    );
  }
  function setUp() {
    parent::setUp();
    variable_set('locale_translate_file_directory', drupal_get_path('module', 'simpletest') . '/files/translations');
  }

  /**
   * Tests that the installer can find translation files.
   */
  function testInstallerTranslationFiles() {
    include_once DRUPAL_ROOT . '/core/includes/install.core.inc';

    // Different translation files would be found depending on which language
    // we are looking for.
    $expected_translation_files = array(
      NULL => array(
        'drupal-8.0.hu.po',
        'drupal-8.0.de.po',
      ),
      'de' => array(
        'drupal-8.0.de.po',
      ),
      'hu' => array(
        'drupal-8.0.hu.po',
      ),
      'it' => array(),
    );
    foreach ($expected_translation_files as $langcode => $files_expected) {
      $files_found = install_find_translation_files($langcode);
      $this
        ->assertTrue(count($files_found) == count($files_expected), format_string('@count installer languages found.', array(
        '@count' => count($files_expected),
      )));
      foreach ($files_found as $file) {
        $this
          ->assertTrue(in_array($file->filename, $files_expected), format_string('@file found.', array(
          '@file' => $file->filename,
        )));
      }
    }
  }

}

Classes

Namesort descending Description
InstallerLanguageTest Tests installer language detection.