function RendererTest::testRenderCacheMaxAge

Tests render cache max age.

@legacy-covers ::render @legacy-covers ::doRender @legacy-covers \Drupal\Core\Render\RenderCache::get @legacy-covers \Drupal\Core\Render\RenderCache::set

Attributes

#[DataProvider('providerTestRenderCacheMaxAge')]

File

core/tests/Drupal/Tests/Core/Render/RendererTest.php, line 946

Class

RendererTest
Tests Drupal\Core\Render\Renderer.

Namespace

Drupal\Tests\Core\Render

Code

public function testRenderCacheMaxAge($max_age, $is_render_cached, $render_cache_item_expire) : void {
  $this->setUpRequest();
  $this->setUpMemoryCache();
  $element = [
    '#cache' => [
      'keys' => [
        'render_cache_test',
      ],
      'max-age' => $max_age,
    ],
    '#markup' => '',
  ];
  $this->renderer
    ->renderRoot($element);
  $cache_item = $this->cacheFactory
    ->get('render')
    ->get([
    'render_cache_test',
  ], CacheableMetadata::createFromRenderArray($element));
  if (!$is_render_cached) {
    $this->assertFalse($cache_item);
  }
  else {
    $this->assertNotFalse($cache_item);
    $this->assertSame($render_cache_item_expire, $cache_item->expire);
  }
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.