Issue #3592934: Add sticky header functional coverage

Functional coverage for the default theme sticky header (sticky_header setting, https://www.drupal.org/project/vartheme_bs5/issues/3593396).

Written against the default theme so it works whatever the default theme is, including a custom subtheme. All selectors are theme agnostic — HTML5 landmarks, ARIA roles, and Drupal core or module classes — so swapping the default theme does not break the tests.

Scenarios — tests/features/01-website-base-requirements/01-07-default-theme-settings.feature

  • The default theme renders its main landmarks on the homepage.
  • The sticky header is enabled by default on the homepage.
  • The header gains the scrolled state when the page is scrolled.
  • The sticky header stays sticky across mobile, tablet and desktop breakpoints.
  • The sticky header setting is available in the default theme settings.
  • Disabling the setting removes the sticky header; re-enabling restores it (verified as an anonymous visitor after flushing caches).

Performance budgets — tests/features/15-quality/15-03-performance.feature

  • Tightened page load budgets to 3 seconds for the login page and 5 seconds for the other key pages, covering load time with the sticky header library (CSS + JS) active.

Supporting changes

  • tests/selectors/default-theme.json — a theme-agnostic named selector registry, auto-loaded via worldParameters.selectors.
  • tests/step-definitions/varbase.steps.js — steps to open the default theme settings, toggle the sticky header setting, flush all caches from the Drupal core Performance page, and assert an element is sticky.

AI-Generated: Yes (Used Claude Code to draft the scenarios and steps; reviewed by the contributor.)

Checkpoints

  • File an issue about this project
  • Addition/Change/Update/Fix to this project
  • Testing to ensure no regression
  • Automated unit/functional testing coverage
  • Developer Documentation support on feature change/addition
  • User Guide Documentation support on feature change/addition
  • UX/UI designer responsibilities
  • Accessibility and Readability
  • Code review from 1 Varbase core team member
  • Full testing and approval
  • Credit contributors
  • Review with the product owner
  • Update Release Notes
  • Release
Edited by Rajab Natshah

Merge request reports

Loading