Files
openobserve/tests/ui-testing/pages/reportsPages
ktx-akshay 411be8968a test: fix flaky report folder move test (#13847)
## Problem

`reportFolders.spec.js` failed intermittently in CI. `P2: Move button
disabled
when source equals destination` failed on all 3 retries with a
freshly-created
report each time — the signature of poisoned shared state, not timing
flake.

## Root causes

Four independent test-side defects, all rooted in specs sharing one org,
one
user, and one `default` folder under `fullyParallel: true, workers: 5`:

1. **Reports bound to a stranger's dashboard.** `createReportViaApi`
ignored the
dashboard the test had just created and attached to `dashboards[0]` —
whichever
dashboard sorted first alphabetically in the shared folder. Deleting a
dashboard removes its reports, so a neighbouring spec's cleanup made the
   report vanish mid-test.

2. **Blanket cleanups.** `cleanupDashboards()` deletes *every* dashboard
owned by
the automation user — every other spec's included (16 in one observed
run).
`reportFolders` also deleted every report matching `test_report_`, which
swept
   up `scheduledReportsDrawer`'s `test_report_sched_*`.

3. **Bulk select-all across the shared folder.**
`reports-bulk-operations` did
"select all in `default` → bulk move/delete". Under parallel load that
captured other specs' reports. Confirmed on a live server:
`reportFolders`'
   report was found sitting in `bulk_test_folder_*`, created 78ms apart.

4. **A retry that could never succeed.** `expectReportVisibleInTable`
retried by
re-typing the same value into the search box. The Vue model never
changed, and
the in-folder search is a client-side filter over already-fetched rows —
it
cannot pull in a report the page hasn't loaded. The poll burned its full
45s
doing nothing. Separately, `clickMove()` swallowed its dialog-close
wait, so a
move that never landed passed silently and failed a *later* test
instead.

## Changes
2026-08-18 07:30:29 +00:00
..