test(it): accept multi-select testCaseStatus[] URL in DQ dashboard pie nav (2.0) - #31881
Conversation
…ard pie nav PR #31662 made the test-case status filter multi-select and changed BINARY_STATUS_PIE_SEGMENT_ORDER to TestCaseStatus[][]. The Entity Health pie segment now navigates with an array of statuses, serialized with bracket array syntax (testCaseStatus[]=Failed&testCaseStatus[]=Aborted, URL-encoded as testCaseStatus%5B%5D=), instead of a bare testCaseStatus=. The Java IT page object still waited on the old testCaseStatus= regex, so waitForURL never matched and the flow timed out after 20s. Widen the pattern to accept the bare, literal-bracket, and encoded-bracket forms so both single- and multi-status pies satisfy the navigation contract, mirroring the TS spec update that shipped in the same PR.
❌ PR checklist incompleteThis PR cannot be merged until the following are addressed on its linked issue:
The fields live on the linked issue in the Shipping project (open the issue → right sidebar → Projects). After you set them, re-run this check (or push a commit) — issue/project changes do not re-trigger it automatically. Maintainers can bypass this check by adding the |
Code Review ✅ ApprovedWidens the waitForURL regex in DataQualityDashboardDimensionAndPieReindexUIIT to support multi-select testCaseStatus[] parameters in the DQ dashboard pie nav. No issues found. OptionsDisplay: compact → Showing less information. Comment with these commands to change the behavior for this request:
Was this helpful? React with 👍 / 👎 | Powered by Gitar — free for open source |
✅ Playwright Results — workflow succeededValidated commit ✅ 550 passed · ❌ 0 failed · 🟡 1 flaky · ⏭️ 0 skipped · 🧰 0 lifecycle flaky PerformanceBlocking targets: ✅ met · Optimization targets: 🟡 in progress Shard-job maxima below are not the full workflow wall time; the linked run includes build, fixture, planning, and reporting. 🕒 Full workflow signal wall (to summary) 49m 29s ⏱️ Max setup 3m 6s · max shard execution 14m 55s · max shard-job elapsed before upload 18m 36s · reporting 6s 🌐 209.90 requests/attempt · 2.83 app boots/UI scenario · 19.78% common-shard skew Optimization targets still in progress:
🟡 1 flaky test(s) (passed on retry)
How to debug locally# Download playwright-test-results-<shard> artifact and unzip
npx playwright show-trace path/to/trace.zip # view trace |
2.0 backport of #31880.
Problem
DataQualityDashboardDimensionAndPieReindexUIIT.dashboardNavigationSurvivesReindexfails on the 2.0 nightly with a 20s Playwright timeout at the Entity Health pie step.Root cause
PR #31662 (add multi-select test case status filter, on both
mainand2.0) changedBINARY_STATUS_PIE_SEGMENT_ORDERtoTestCaseStatus[][]. The Entity Health pie now navigates with an array of statuses, serialized astestCaseStatus[]=Failed&testCaseStatus[]=Aborted(URL-encodedtestCaseStatus%5B%5D=), not a baretestCaseStatus=. The Java IT page object still waited on the oldtestCaseStatus=regex →waitForURLnever matched → timeout.Fix
Widen the
waitForURLpattern to accept the bare, literal-bracket, and encoded-bracket forms (testCaseStatus(%5B%5D|\[\])?=), mirroring the TS spec change that shipped in #31662. Test-only change.Greptile Summary
This test-only backport updates the Data Quality dashboard page object to recognize single- and multi-select test-case status query parameters.
Confidence Score: 5/5
The PR appears safe to merge with no actionable defects identified.
The updated expression accepts the actual encoded multi-status query key while continuing to require the expected test-cases route and status parameter.
Important Files Changed
Reviews (1): Last reviewed commit: "test(it): accept multi-select testCaseSt..." | Re-trigger Greptile