Loading
Add MSW integration specs for the DAP Impact dashboard
What does this MR do and why?
- Explore analytics dashboards:
customSystemDashboardreturns a resource-not-available GraphQL error (not null) when the dashboard is behind a disabled/not-rolled-out feature flag, e.g.dap_impact_v1. dashboard_loader.vuetreated that error the same as any load failure: "Failed to load dashboard" alert plus a Sentry report. A slug matching nothing rendered an empty dashboard shell with filters instead of a not found state.- Fix: both cases now show the existing "Dashboard not found" empty state with a "View available dashboards" link back to the list. Other errors still show the alert.
- Breadcrumb now reads "Dashboard not found" for this case too — breadcrumb state outlives the page, so it kept the previous dashboard's name otherwise.
- Clears the loaded dashboard on this error so changing the slug in place doesn't keep showing the old dashboard.
- Adds MSW integration specs for the not found case on the DAP Impact system dashboard: positive control (user who can see it), and not found state (flag off / not enabled) with no title, tabs, filters, or Sentry report.
- Fixtures come from a new RSpec generator,
ee/spec/frontend/fixtures/analytics_dashboards_integration.rb, not hand-written. - More DAP Impact MSW coverage (panels, scope, views, reading-order flag, licence constraint) is follow-up work.
References
Screenshots or screen recordings
| Before | After | |
|---|---|---|
Dashboard hidden from the user (dap_impact_v1 off) |
![]() |
![]() |
| Slug that matches no dashboard | ![]() |
![]() |
How to set up and validate locally
- In rails console:
Feature.enable(:explore_analytics_dashboards)andFeature.enable(:dap_impact_v1). - Visit
http://gdk.test:3000/explore/analytics_dashboards/dap_impact— dashboard loads. Feature.disable(:dap_impact_v1)and reload — "Dashboard not found" with a link back to the list, no error alert, breadcrumb reads "Dashboard not found".- Visit
http://gdk.test:3000/explore/analytics_dashboards/does_not_exist— same not found state.
MR acceptance checklist
Evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.
Edited by Ezekiel Kigbo


