Skip to content

test(e2e): drop 5 dead marketplace tests and two stale skip comments (cherry-pick #30843 to 2.0) - #30912

Merged
siddhant1 merged 1 commit into
2.0from
cherry/30843-to-2.0
Aug 4, 2026
Merged

test(e2e): drop 5 dead marketplace tests and two stale skip comments (cherry-pick #30843 to 2.0)#30912
siddhant1 merged 1 commit into
2.0from
cherry/30843-to-2.0

Conversation

@siddhant1

Copy link
Copy Markdown
Member

Cherry-picks aeafd62397 (#30843, merged to main) onto 2.0.

What was already on 2.0

2.0 already carried the glossary half of #30843d4ab24372b is an ancestor of origin/2.0, and that branch includes both "drop four status-filter tests" and "re-enable four specs". So the four never-run status-filter tests were already gone and the two stale skips already lifted.

What was missing, and is what this PR brings over:

  • the 5 marketplace navigation tests whose routes were removed in refactor(ui): render Data Marketplace home page on the main app layout #27377 — all three spec files were untouched on 2.0
  • the dead searchMarketplace import in DataMarketplacePermissions.spec.ts, orphaned by removing "Data consumer can search and view results"
  • two stale skip-reason comments left above tests that are already active on 2.0, so the source contradicted itself:
    • Glossary.spec.ts — "Need to fix the workflow from BE end, as it constantly failing in the AUT's" above the active Term should stay approved when changes made by reviewer
    • GlossaryStatusFilterNestedTerms.spec.ts — "Skip: Requires re-filtering expanded state which isn't fully implemented" above the active change filter while expanded updates visible root terms

Tests removed

Five, all test.skip, all navigating to /data-marketplace/* sub-routes that #27377 (3129a14b10) deleted while skipping them in the same commit, noting "re-enable when the standalone marketplace shell is reintroduced". That shell has not returned in four months.

Spec Test
DataMarketplace.spec.ts Search returns results and clicking navigates to entity
DataMarketplace.spec.ts Widget card click navigates to entity detail page
DataMarketplace.spec.ts View All links navigate correctly
DataMarketplaceAnnouncements.spec.ts Clicking announcement navigates to entity page
DataMarketplacePermissions.spec.ts Data consumer can search and view results

Scope is the five dead tests, not the three spec files. The marketplace page is alive; the files keep their passing coverage of rendering, data-product and domain creation via the drawer, the search empty state, the search popover, and the admin-vs-consumer permission split.

Conflicts and how they were resolved

Two, both the stale-comment removals listed above. Resolved by taking the incoming side (deleting the comment) — the tests they annotate are not skipped on 2.0, so the comments were already wrong.

One intentional divergence from main

Glossary.spec.ts is the only file that does not end up byte-identical to main, and it differs by exactly one line — a genuine pre-existing 2.0 difference in the glossary assets-tab empty state, preserved rather than clobbered:

-        await page.getByTestId('empty-placeholder').waitFor();     # main
+        await page.getByText('No assets linked yet').waitFor();    # 2.0

The other four specs are byte-identical to main after this cherry-pick.

Verification

  • No conflict markers anywhere under playwright/
  • No test.skip / test.fixme left in any of the five touched specs
  • searchMarketplace dropped from the permissions spec's imports; still imported and used in DataMarketplace.spec.ts
  • Full CI checkstyle sequence (organize-imports-clieslint --fixprettier --write) run on all five files: 0 errors, and idempotent — no diff against the committed state. The three remaining eslint warnings are pre-existing browser.newPage() advisories on lines this PR does not touch.

🤖 Generated with Claude Code

…removed routes), re-enable 2 that pass (#30843)

* test(glossary): drop four status-filter tests that were never implemented

These four arrived skipped in #25428 (`12d85f310f`), the same commit that created
the file, and have never executed once in five months. They are not regressions
and not flakes — they are a specification for behaviour the backend does not have.

Each carried its own reason inline from birth: "Requires backend to return nested
terms as flat results when filtered". That is accurate. The glossary term listing
sends `directChildrenOf` and `entityStatus` on the same request
(`glossaryAPI.ts` `getFirstLevelGlossaryTermsPaginated`), and the backend ANDs them
(`GlossaryTermResource` `.addQueryParam("directChildrenOf", …).addQueryParam("entityStatus", …)`),
so a nested term is eliminated by the hierarchy filter before its status is ever
considered. No status value can surface a grandchild as a flat result.

Confirmed by running them: on a real 1.13 stack all four fail at ~17.5s (the
locator timeout — the term genuinely never renders), while every sibling test that
asserts only root-level terms passes. `glossaryAPI.ts` and `GlossaryTermResource`
are byte-identical across 1.13, main and 2.0, so the outcome is the same everywhere.

Removed rather than left skipped: five bare `test.skip`s surface on every nightly
triage list as if they were failures, and cost review attention each time someone
asks why the glossary suite is red. If flat subtree filtering is built, these are
better rewritten against the real API than resurrected from a five-month-old skip.

No fixtures are orphaned — `basicChild`, `multiChild`, `deepTerms` and the rest are
still used by the surviving tests. Prettier and eslint clean.

Co-Authored-By: Claude <noreply@anthropic.com>

* test(e2e): re-enable four specs that pass on main today

Each of these was written active and green, then skipped later when something
broke. All four pass now on a real main stack built from this branch point
(`revision 64df7a3`), so the markers are stale:

| Test | Skipped since | Measured on main |
|---|---|---|
| `ActivityFeed › Mention notification shows correct user details` | #25894 (`test.fixme`) | 9.4s |
| `CustomizeWidgets › KPI Widget` | `test.fixme` | 30.3s |
| `Glossary › Term should stay approved when changes made by reviewer` | BE approval workflow | 1.0m |
| `GlossaryStatusFilter › change filter while expanded updates visible root terms` | #25428 | 2.8s |

`Term should stay approved` is the interesting one: its documented cause was the
async approval workflow reverting a PATCHed entityStatus, and #29931 fixed exactly
that machinery (approve/reject condition scheme, duplicate edges, stuck resolves)
in July. main carries #29931; the test now passes.

`change filter while expanded` never ran — it was born skipped in #25428 claiming
"re-filtering expanded state isn't fully implemented". That shipped at some point
and nobody revisited the marker. It is kept rather than deleted precisely because
it passes: it is the one test in that file whose skip was stale rather than
blocked on the missing backend support.

Stale `eslint-disable playwright/no-skipped-test` directives removed with their
skips, otherwise they become unused-directive errors.

Prettier clean; eslint 0 errors.

Co-Authored-By: Claude <noreply@anthropic.com>

* Revert re-enabling KPI Widget and the ActivityFeed mention test

Both pass on a main stack (30.3s and 9.4s), but they are out of scope for this PR
and stay skipped. The two re-enables that remain — Term should stay approved and
change filter while expanded — are unaffected.

Co-Authored-By: Claude <noreply@anthropic.com>

* test(marketplace): drop five navigation tests whose routes were removed

These five differ from the four glossary tests removed earlier in this PR: they
were born **active and green** in #26255 (`e90ab792f6`, 2026-04-06) and ran for ten
days. #27377 (`3129a14b10`) then removed the `/data-marketplace/*` sub-routes they
navigate to and skipped them in the same commit, noting "re-enable when the
standalone marketplace shell is reintroduced". That shell has not been
reintroduced in four months, so the skips are now a permanent fixture rather than
a pending re-enable.

Confirmed dead by running them un-skipped: all five fail at 1.0m on both a real
1.13 stack and a real main stack — the navigation target does not exist.

Scope is the five dead navigation tests, **not** the three spec files. The
marketplace page is alive — 11 marketplace components ship on every branch — and
the files retain 8 passing tests covering rendering, data-product and domain
creation via the drawer, the search empty state, the search popover, and the
admin-vs-consumer permission split. Deleting the files would have taken that with
them.

If the standalone marketplace shell returns, these are better rewritten against the
new routes than restored from a four-month-old skip.

Prettier clean; eslint 0 errors.

Co-Authored-By: Claude <noreply@anthropic.com>

* Fix UI checkstyle: drop dead import and two stale skip comments

`ui-checkstyle` failed on DataMarketplacePermissions.spec.ts. Removing the
"Data consumer can search and view results" test left `searchMarketplace`
imported and unused (0 references), which `organize-imports-cli` strips.

CI's Playwright step is organize-imports -> eslint --fix -> prettier --write; the
earlier local pass ran only eslint and prettier, and neither flags a dead import,
which is why this got through locally but not in CI.

Also removes two skip-reason comments left above tests re-enabled earlier in this
PR, flagged in review — the source contradicted itself:

- Glossary.spec.ts: "Need to fix the workflow from BE end, as it constantly
  failing in the AUT's" above the now-active `Term should stay approved`
- GlossaryStatusFilterNestedTerms.spec.ts: "Skip: Requires re-filtering expanded
  state which isn't fully implemented" above the now-active `change filter while
  expanded`

ActivityFeed.spec.ts's comment is left alone — that un-skip was reverted, so its
note still matches a `test.fixme`.

Verified by re-running the full CI sequence: idempotent, 0 eslint errors.

Co-Authored-By: Claude <noreply@anthropic.com>

---------

Co-authored-by: Claude <noreply@anthropic.com>
(cherry picked from commit aeafd62)
@siddhant1
siddhant1 requested a review from a team as a code owner August 4, 2026 05:04
@github-actions

github-actions Bot commented Aug 4, 2026

Copy link
Copy Markdown
Contributor

❌ PR checklist incomplete

This PR cannot be merged until the following are addressed on its linked issue:

  • No GitHub issue is linked. Link an issue in the Development section of the PR (or add Fixes #12345 to the description). For a same-org cross-repo issue, add Fixes open-metadata/<repo>#123 to the description.

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 skip-pr-checks label.

@github-actions github-actions Bot added the UI UI specific issues label Aug 4, 2026
@github-actions

github-actions Bot commented Aug 4, 2026

Copy link
Copy Markdown
Contributor

Hi there 👋 Thanks for your contribution!

The OpenMetadata team will review the PR shortly! Once it has been labeled as safe to test, the CI workflows
will start executing and we'll be able to make sure everything is working as expected.

Let us know if you need any help!

@siddhant1
siddhant1 merged commit 90238e2 into 2.0 Aug 4, 2026
51 of 54 checks passed
@siddhant1
siddhant1 deleted the cherry/30843-to-2.0 branch August 4, 2026 05:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

UI UI specific issues

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant