You are here

public function ConfigNamesMapperTest::testHasTranslation in Zircon Profile 8

Same name and namespace in other branches
  1. 8.0 core/modules/config_translation/tests/src/Unit/ConfigNamesMapperTest.php \Drupal\Tests\config_translation\Unit\ConfigNamesMapperTest::testHasTranslation()

Tests ConfigNamesMapper::hasTranslation().

@dataProvider providerTestHasTranslation

Parameters

array $mock_return_values: An array of values that the mocked configuration mapper manager should return for hasTranslation().

bool $expected: The expected return value of ConfigNamesMapper::hasTranslation().

File

core/modules/config_translation/tests/src/Unit/ConfigNamesMapperTest.php, line 582
Contains \Drupal\Tests\config_translation\Unit\ConfigNamesMapperTest.

Class

ConfigNamesMapperTest
Tests the functionality provided by the configuration names mapper.

Namespace

Drupal\Tests\config_translation\Unit

Code

public function testHasTranslation(array $mock_return_values, $expected) {
  $language = new Language();

  // As the configuration names are arbitrary, simply use integers.
  $config_names = range(1, count($mock_return_values));
  $this->configNamesMapper
    ->setConfigNames($config_names);
  $map = array();
  foreach ($config_names as $i => $config_name) {
    $map[] = array(
      $config_name,
      $language
        ->getId(),
      $mock_return_values[$i],
    );
  }
  $this->localeConfigManager
    ->expects($this
    ->any())
    ->method('hasTranslation')
    ->will($this
    ->returnValueMap($map));
  $result = $this->configNamesMapper
    ->hasTranslation($language);
  $this
    ->assertSame($expected, $result);
}