function RendererBubblingTest::testContextBubblingEdgeCases
Tests cache context bubbling in edge cases, because it affects the CID.
::testBubblingWithPrerender() already tests the common case.
@dataProvider providerTestContextBubblingEdgeCases
File
- 
              core/
tests/ Drupal/ Tests/ Core/ Render/ RendererBubblingTest.php, line 137  
Class
- RendererBubblingTest
 - @coversDefaultClass \Drupal\Core\Render\Renderer[[api-linebreak]] @group Render
 
Namespace
Drupal\Tests\Core\RenderCode
public function testContextBubblingEdgeCases(array $element, array $expected_top_level_contexts, array $expected_cache_items) {
  $this->setUpRequest();
  $this->setupMemoryCache();
  $this->cacheContextsManager
    ->expects($this->any())
    ->method('convertTokensToKeys')
    ->willReturnArgument(0);
  $this->renderer
    ->renderRoot($element);
  $this->assertEqualsCanonicalizing($expected_top_level_contexts, $element['#cache']['contexts'], 'Expected cache contexts found.');
  foreach ($expected_cache_items as $cid => $expected_cache_item) {
    $this->assertRenderCacheItem($cid, $expected_cache_item);
  }
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.