Skip to content

Enable feature flags in specs and fix all failures

Thomas Hutterer requested to merge 358113-enable-ff-in-specs-and-derisk into master

What does this MR do and why?

This MR is part of a series of MRs to implement #358113 (closed). Actually it is the last one before we can roll this out 🤞

It moves the vue_page_breadcrumbs feature flag from wip to beta, enables the feature in specs, and updates the feature specs to work with the new breadcrumbs.

Why did so many feature specs need updating?

  1. The new implementation (using GlBreadcrumb component) doesn't support the old breadcrumb-current-link testid. This isn't a big deal, we can just use the parent element's testid and look for the last list item.
  2. The new Vue breadcrumbs only "come to live" when the feature spec runs with Javascript support (:js on the context).
  3. Some specs even still used the very generic .breadcrumbs CSS class to find them on the page. This class doesn't exist anymore.

Does this MR change anything outside of specs/?

Only one thing: The breadcrumb-links testid got moved from the #js-vue-page-breadcrumbs element up to its parent #js-vue-page-breadcrumbs-wrapper to support finding elements in the "injected" breadcrumbs. See the first two files in the diff tab.

MR acceptance checklist

Please evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.

Screenshots or screen recordings

No visual changes.

How to set up and validate locally

  • Check CI. All tests should pass (obviously).
  • Nothing else really. The only app/ change was moving the testid, which only impacts specs, not the implementation.
Edited by Thomas Hutterer

Merge request reports