function InstallerLanguageTest::testInstallerTranslationFiles

Tests that the installer can find translation files.

File

drupal/core/modules/system/lib/Drupal/system/Tests/Installer/InstallerLanguageTest.php, line 37
Definition of Drupal\system\Tests\Installer\InstallerLanguageTest.

Class

InstallerLanguageTest
Tests installer language detection.

Namespace

Drupal\system\Tests\Installer

Code

function testInstallerTranslationFiles() {

  // 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(),
  );
  $file_translation = new FileTranslation($GLOBALS['conf']['locale.settings']['translation.path']);
  foreach ($expected_translation_files as $langcode => $files_expected) {
    $files_found = $file_translation
      ->findTranslationFiles($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,
      )));
    }
  }
}