3 namespace Drupal\views\Tests\Update;
5 use Drupal\system\Tests\Update\UpdatePathTestBase;
6 use Drupal\views\Views;
9 * Tests that views cacheability metadata post update hook runs properly.
11 * @see views_post_update_update_cacheability_metadata().
15 class CacheabilityMetadataUpdateTest extends UpdatePathTestBase {
20 protected function setDatabaseDumpFiles() {
21 $this->databaseDumpFiles = [__DIR__ . '/../../../../system/tests/fixtures/update/drupal-8.bare.standard.php.gz'];
25 * Tests that views cacheability metadata updated properly.
27 public function testUpdateHookN() {
29 foreach (Views::getAllViews() as $view) {
30 $displays = $view->get('display');
31 foreach (array_keys($displays) as $display_id) {
32 $display = $view->getDisplay($display_id);
33 $this->assertFalse(isset($display['cache_metadata']['cacheable']));
34 $this->assertTrue(isset($display['cache_metadata']['contexts']));
35 $this->assertTrue(isset($display['cache_metadata']['max-age']));
36 $this->assertTrue(isset($display['cache_metadata']['tags']));