core/modules/node/src/Plugin/Search/NodeSearch.php | 2 ++ core/modules/search/src/Tests/SearchPageCacheTagsTest.php | 7 +++++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/core/modules/node/src/Plugin/Search/NodeSearch.php b/core/modules/node/src/Plugin/Search/NodeSearch.php index d5e3f9f..97ae236 100644 --- a/core/modules/node/src/Plugin/Search/NodeSearch.php +++ b/core/modules/node/src/Plugin/Search/NodeSearch.php @@ -8,6 +8,7 @@ namespace Drupal\node\Plugin\Search; use Drupal\Core\Access\AccessResult; +use Drupal\Core\Cache\CacheableMetadata; use Drupal\Core\Config\Config; use Drupal\Core\Database\Connection; use Drupal\Core\Database\Query\SelectExtender; @@ -335,6 +336,7 @@ protected function prepareResults(StatementInterface $found) { // Fetch comments for snippet. $rendered = $this->renderer->renderPlain($build); + $this->addCacheableDependency(CacheableMetadata::createFromRenderArray($build)); $rendered .= ' ' . $this->moduleHandler->invoke('comment', 'node_update_index', array($node, $item->langcode)); $extra = $this->moduleHandler->invokeAll('node_search_result', array($node, $item->langcode)); diff --git a/core/modules/search/src/Tests/SearchPageCacheTagsTest.php b/core/modules/search/src/Tests/SearchPageCacheTagsTest.php index 1927ea7..6a74718 100644 --- a/core/modules/search/src/Tests/SearchPageCacheTagsTest.php +++ b/core/modules/search/src/Tests/SearchPageCacheTagsTest.php @@ -193,7 +193,9 @@ public function testSearchTagsBubbling() { 'node:1', 'user:2', 'node:2', - 'user:3' + 'user:3', + 'node_view', + 'config:filter.format.plain_text', ]); $cache_tags = $this->drupalGetHeader('X-Drupal-Cache-Tags'); $this->assertEqual(explode(' ', $cache_tags), $expected_cache_tags); @@ -208,7 +210,8 @@ public function testSearchTagsBubbling() { $expected_cache_tags = Cache::mergeTags($default_search_tags, [ 'node:1', 'node:2', - 'user:3' + 'user:3', + 'node_view', ]); $cache_tags = $this->drupalGetHeader('X-Drupal-Cache-Tags'); $this->assertEqual(explode(' ', $cache_tags), $expected_cache_tags);