Same name and namespace in other branches
  1. 8.9.x core/modules/system/tests/modules/common_test/common_test.module \common_test_page_attachments()
  2. 9 core/modules/system/tests/modules/common_test/common_test.module \common_test_page_attachments()

Implements hook_page_attachments().

See also

\Drupal\system\Tests\Common\PageRenderTest::assertPageRenderHookExceptions()

File

core/modules/system/tests/modules/common_test/common_test.module, line 198
Helper module for the Common tests.

Code

function common_test_page_attachments(array &$page) {
  $page['#attached']['library'][] = 'core/foo';
  $page['#attached']['library'][] = 'core/bar';
  $page['#cache']['tags'] = [
    'example',
  ];
  $page['#cache']['contexts'] = [
    'user.permissions',
  ];
  if (\Drupal::state()
    ->get('common_test.hook_page_attachments.descendant_attached', FALSE)) {
    $page['content']['#attached']['library'][] = 'core/jquery';
  }
  if (\Drupal::state()
    ->get('common_test.hook_page_attachments.render_array', FALSE)) {
    $page['something'] = [
      '#markup' => 'test',
    ];
  }
  if (\Drupal::state()
    ->get('common_test.hook_page_attachments.early_rendering', FALSE)) {

    // Do some early rendering.
    $element = [
      '#markup' => '123',
    ];
    \Drupal::service('renderer')
      ->render($element);
  }
}