Verified Commit 50450028 authored by catch's avatar catch Committed by Dave Long
Browse files

Issue #3358048 by mglaman, dww, amateescu: Do not use persist tag for...

Issue #3358048 by mglaman, dww, amateescu: Do not use persist tag for keyvalue.memory in KernelTestBase

(cherry picked from commit e129b1e0)
parent 3fd342d7
Loading
Loading
Loading
Loading
+16 −3
Original line number Diff line number Diff line
@@ -194,6 +194,13 @@ abstract class KernelTestBase extends TestCase implements ServiceProviderInterfa
   */
  protected $configImporter;

  /**
   * The key_value service that must persist between container rebuilds.
   *
   * @var \Drupal\Core\KeyValueStore\KeyValueMemoryFactory
   */
  protected $keyValue;

  /**
   * The app root.
   *
@@ -544,12 +551,18 @@ public function register(ContainerBuilder $container) {
    $container
      ->register('cache_factory', 'Drupal\Core\Cache\MemoryBackendFactory');
    $container
      ->register('keyvalue.memory', 'Drupal\Core\KeyValueStore\KeyValueMemoryFactory')
      // Must persist container rebuilds, or all data would vanish otherwise.
      ->addTag('persist');
      ->register('keyvalue.memory', 'Drupal\Core\KeyValueStore\KeyValueMemoryFactory');
    $container
      ->setAlias('keyvalue', 'keyvalue.memory');

    // Must persist container rebuilds, or all data would vanish otherwise.
    if ($this->keyValue !== NULL) {
      $container->set('keyvalue.memory', $this->keyValue);
    }
    else {
      $this->keyValue = $container->get('keyvalue.memory');
    }

    // Set the default language on the minimal container.
    $container->setParameter('language.default_values', Language::$defaultValues);