diff --git a/tests/src/Functional/ResourceResponseTestTrait.php b/tests/src/Functional/ResourceResponseTestTrait.php index 054f0de..0452e4c 100644 --- a/tests/src/Functional/ResourceResponseTestTrait.php +++ b/tests/src/Functional/ResourceResponseTestTrait.php @@ -524,14 +524,17 @@ trait ResourceResponseTestTrait { * @return \Drupal\jsonapi\ResourceResponse * The empty collection ResourceResponse. */ - protected static function getEmptyCollectionResponse($cardinality, $self_link) { - return new ResourceResponse([ + protected function getEmptyCollectionResponse($cardinality, $self_link) { + $cacheability = (new CacheableMetadata()) + ->addCacheContexts($this->getExpectedCacheContexts()) + ->addCacheTags(['http_response']); + return (new ResourceResponse([ // Empty to-one relationships should be NULL and empty to-many // relationships should be an empty array. 'data' => $cardinality === 1 ? NULL : [], 'jsonapi' => static::$jsonApiMember, 'links' => ['self' => ['href' => $self_link]], - ]); + ]))->addCacheableDependency($cacheability); } /** diff --git a/tests/src/Functional/ResourceTestBase.php b/tests/src/Functional/ResourceTestBase.php index 2c0c7e2..5b833f7 100644 --- a/tests/src/Functional/ResourceTestBase.php +++ b/tests/src/Functional/ResourceTestBase.php @@ -560,7 +560,7 @@ abstract class ResourceTestBase extends BrowserTestBase { 'url.site', ]; // If the entity type is revisionable, add a resource version cache context. - $cache_contexts = array_merge($cache_contexts, $entity_type->isRevisionable() ? ['url.query_args:resource_version'] : []); + $cache_contexts = Cache::mergeContexts($cache_contexts, $entity_type->isRevisionable() ? ['url.query_args:resource_version'] : []); $cacheability->addCacheContexts($cache_contexts); return $cacheability; } @@ -1676,7 +1676,7 @@ abstract class ResourceTestBase extends BrowserTestBase { } $expected_document = $this->getExpectedGetRelationshipDocument($relationship_field_name, $entity); $expected_cacheability = (new CacheableMetadata()) - ->addCacheTags($this->getExpectedCacheTags([])) + ->addCacheTags(['http_response']) ->addCacheContexts(['url.site']) ->addCacheableDependency($entity) ->addCacheableDependency($access);