You are here

public function LocaleLookupTest::testResolveCacheMissWithPersist in Drupal 8

Same name and namespace in other branches
  1. 9 core/modules/locale/tests/src/Unit/LocaleLookupTest.php \Drupal\Tests\locale\Unit\LocaleLookupTest::testResolveCacheMissWithPersist()
  2. 10 core/modules/locale/tests/src/Unit/LocaleLookupTest.php \Drupal\Tests\locale\Unit\LocaleLookupTest::testResolveCacheMissWithPersist()

Tests locale lookups with persistent tracking.

@covers ::resolveCacheMiss

File

core/modules/locale/tests/src/Unit/LocaleLookupTest.php, line 213

Class

LocaleLookupTest
@coversDefaultClass \Drupal\locale\LocaleLookup @group locale

Namespace

Drupal\Tests\locale\Unit

Code

public function testResolveCacheMissWithPersist() {
  $args = [
    'language' => 'en',
    'source' => 'test',
    'context' => 'irrelevant',
  ];
  $result = (object) [
    'translation' => 'test',
  ];
  $this->storage
    ->expects($this
    ->once())
    ->method('findTranslation')
    ->with($this
    ->equalTo($args))
    ->will($this
    ->returnValue($result));
  $this->configFactory = $this
    ->getConfigFactoryStub([
    'locale.settings' => [
      'cache_strings' => TRUE,
    ],
  ]);
  $locale_lookup = $this
    ->getMockBuilder('Drupal\\locale\\LocaleLookup')
    ->setConstructorArgs([
    'en',
    'irrelevant',
    $this->storage,
    $this->cache,
    $this->lock,
    $this->configFactory,
    $this->languageManager,
    $this->requestStack,
  ])
    ->setMethods([
    'persist',
  ])
    ->getMock();
  $locale_lookup
    ->expects($this
    ->once())
    ->method('persist');
  $this
    ->assertSame('test', $locale_lookup
    ->get('test'));
}