$this->
assertNotEmpty(\Drupal::
cache()->
get($cid), 'Cache entry was created.'
);
// Trigger a cache miss for an offset.
$this->
assertNotEmpty($registry->
get('theme_test_template_test'
), 'Offset was returned correctly from the theme registry.'
);
// This will cause the ThemeRegistry class to write an updated version of
// the cache entry when it is destroyed, usually at the end of the request.
// Before that happens, manually delete the cache entry we created earlier
// so that the new entry is written from scratch.
\Drupal::
cache()->
delete($cid);
// Destroy the class so that it triggers a cache write for the offset.
$registry->
destruct();
$this->
assertNotEmpty(\Drupal::
cache()->
get($cid), 'Cache entry was created.'
);
// Create a new instance of the class. Confirm that both the offset
// requested previously, and one that has not yet been requested are both
// available.
$registry =
new ThemeRegistry($cid,
$cache,
$lock_backend,
['theme_registry'
],
$this->container->
get('module_handler'
)->
isLoaded());
$this->
assertNotEmpty($registry->
get('theme_test_template_test'
), 'Offset was returned correctly from the theme registry'
);
$this->
assertNotEmpty($registry->
get('theme_test_template_test_2'
), 'Offset was returned correctly from the theme registry'
);
}