5 * Provides views data and hooks for views_test_data module.
8 use Drupal\views\ViewExecutable;
9 use Drupal\views\Analyzer;
12 * Implements hook_views_data().
14 function views_test_data_views_data() {
15 $state = \Drupal::service('state');
16 $state->set('views_hook_test_views_data', TRUE);
17 // We use a state variable to keep track of how many times this function is
18 // called so we can assert that calls to
19 // \Drupal\views\ViewsData::delete() trigger a rebuild of views data.
20 if (!($count = $state->get('views_test_data_views_data_count'))) {
24 $state->set('views_test_data_views_data_count', $count);
26 return $state->get('views_test_data_views_data', []);
30 * Implements hook_views_data_alter().
32 function views_test_data_views_data_alter() {
33 \Drupal::state()->set('views_hook_test_views_data_alter', TRUE);
37 * Implements hook_views_analyze().
39 function views_test_data_views_analyze(ViewExecutable $view) {
40 \Drupal::state()->set('views_hook_test_views_analyze', TRUE);
44 $ret[] = Analyzer::formatMessage(t('Test ok message'), 'ok');
45 $ret[] = Analyzer::formatMessage(t('Test warning message'), 'warning');
46 $ret[] = Analyzer::formatMessage(t('Test error message'), 'error');
52 * Implements hook_views_invalidate_cache().
54 function views_test_data_views_invalidate_cache() {
55 \Drupal::state()->set('views_hook_test_views_invalidate_cache', TRUE);