You are here

public function UtilitiesTest::testLanguageSpecificFieldTypeNames in Search API Multilingual Solr Search 8

Tests language-specific Solr field names.

File

tests/src/Kernel/UtilitiesTest.php, line 34

Class

UtilitiesTest
Provides tests for various utility functions.

Namespace

Drupal\Tests\search_api_solr_multilingual\Kernel

Code

public function testLanguageSpecificFieldTypeNames() {
  $this
    ->assertEquals('text_de', SASUtility::encodeSolrName('text_de'));

  // Drupal-like locale for Austria.
  $encoded = SASUtility::encodeSolrName('text_de-at');
  $this
    ->assertEquals('text_de_X2d_at', $encoded);
  $this
    ->assertEquals('text_de-at', SASUtility::decodeSolrName($encoded));

  // Traditional Chinese as used in Hong Kong.
  $encoded = SASUtility::encodeSolrName('text_zh-Hant-HK');
  $this
    ->assertEquals('text_zh_X2d_Hant_X2d_HK', $encoded);
  $this
    ->assertEquals('text_zh-Hant-HK', SASUtility::decodeSolrName($encoded));

  // The variant of German orthography dating from the 1901 reforms, as seen
  // in Switzerland.
  $encoded = SASUtility::encodeSolrName('text_de-CH-1901');
  $this
    ->assertEquals('text_de_X2d_CH_X2d_1901', $encoded);
  $this
    ->assertEquals('text_de-CH-1901', SASUtility::decodeSolrName($encoded));
}