protected function EntityTranslationSyncUnitTest::setUp

Sets up Drupal unit test environment.

Overrides DrupalUnitTestBase::setUp

See also

DrupalUnitTestBase::$modules

DrupalUnitTestBase

File

drupal/core/modules/translation_entity/lib/Drupal/translation_entity/Tests/EntityTranslationSyncUnitTest.php, line 71
Contains \Drupal\entity\Tests\EntityTranslationSyncUnitTest.

Class

EntityTranslationSyncUnitTest
Tests the Entity Translation field synchronization algorithm.

Namespace

Drupal\translation_entity\Tests

Code

protected function setUp() {
  parent::setUp();
  $this->synchronizer = new FieldTranslationSynchronizer($this->container
    ->get('plugin.manager.entity'));
  $this->synchronized = array(
    'sync1',
    'sync2',
  );
  $this->columns = array_merge($this->synchronized, array(
    'var1',
    'var2',
  ));
  $this->langcodes = array(
    'en',
    'it',
    'fr',
    'de',
    'es',
  );
  $this->cardinality = 4;
  $this->unchangedFieldValues = array();

  // Set up an initial set of values in the correct state, that is with
  // "synchronized" values being equal.
  foreach ($this->langcodes as $langcode) {
    for ($delta = 0; $delta < $this->cardinality; $delta++) {
      foreach ($this->columns as $column) {
        $sync = in_array($column, $this->synchronized) && $langcode != $this->langcodes[0];
        $value = $sync ? $this->unchangedFieldValues[$this->langcodes[0]][$delta][$column] : $langcode . '-' . $delta . '-' . $column;
        $this->unchangedFieldValues[$langcode][$delta][$column] = $value;
      }
    }
  }
}