Skip to content

e2e(FR-2982): assert inviter email is shown in folder invitation modal#7610

Open
agatha197 wants to merge 4 commits into
fix/FR-2979-shared-folder-invite-senderfrom
e2e/FR-2982-assert-inviter-email-in-invitation-modal
Open

e2e(FR-2982): assert inviter email is shown in folder invitation modal#7610
agatha197 wants to merge 4 commits into
fix/FR-2979-shared-folder-invite-senderfrom
e2e/FR-2982-assert-inviter-email-in-invitation-modal

Conversation

@agatha197
Copy link
Copy Markdown
Contributor

@agatha197 agatha197 commented May 27, 2026

Resolves #7608 (FR-2982)

Stacked on #7607 — merge that one first.

Summary

  • Extend acceptAllInvitationAndVerifySpecificFolder (in e2e/utils/test-util.ts) with an optional inviterEmail parameter.
  • When the parameter is provided, assert that the open FolderInvitationResponseModal contains that email before the Accept loop. This catches regressions in the modal's "From" field — i.e. broken item.inviter_user_email plumbing or a broken invitation-inviter-email capability check.
  • Pass userInfo.user.email (the inviter set up by loginAsUser in beforeEach) at the single existing call site in e2e/vfolder/vfolder-crud.spec.ts ("User can share vFolder"), so the assertion runs in CI.
  • No production source changes; e2e-only.

Why

  • The "From" field is the only place an invitee sees who shared a folder with them. Today no e2e / unit / Storybook test asserts that field is non-empty or correct.
  • Existing test already exercises the modal, so the new check is a low-cost extension rather than a new scenario.

Test plan

  • CI: existing vfolder/vfolder-crud.spec.ts "User can share vFolder" run passes with the new assertion enabled.
  • On a backend with invitation-inviter-email capability, the assertion confirms user@lablup.com is rendered inside the modal.
  • On a backend without that capability, the assertion would fail (the modal falls back to item.inviter, a non-email value); intentional — this is the regression we want to surface.

@github-actions github-actions Bot added the size:S 10~30 LoC label May 27, 2026
Copy link
Copy Markdown
Contributor Author

agatha197 commented May 27, 2026

Warning

This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more


How to use the Graphite Merge Queue

Add either label to this PR to merge it via the merge queue:

  • flow:merge-queue - adds this PR to the back of the merge queue
  • flow:hotfix - for urgent changes, fast-track this PR to the front of the merge queue

You must have a Graphite account in order to use the merge queue. Sign up using this link.

An organization admin has required the Graphite Merge Queue in this repository.

Please do not merge from GitHub as this will restart CI on PRs being processed by the merge queue.

This stack of pull requests is managed by Graphite. Learn more about stacking.

@agatha197 agatha197 marked this pull request as ready for review May 27, 2026 05:35
Copilot AI review requested due to automatic review settings May 27, 2026 05:35
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Extends an existing E2E helper to optionally assert the inviter's email appears in the folder invitation modal, then enables the assertion in the existing vfolder share test. This closes a coverage gap around the modal's "From" field, which currently has no unit, Storybook, or E2E verification.

Changes:

  • Add optional inviterEmail parameter to acceptAllInvitationAndVerifySpecificFolder and assert the modal contains it when provided.
  • Pass userInfo.user.email at the existing call site in vfolder-crud.spec.ts so the assertion runs in CI.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.

File Description
e2e/utils/test-util.ts Adds optional inviterEmail argument and a toContainText assertion on the invitation modal.
e2e/vfolder/vfolder-crud.spec.ts Passes inviter email (userInfo.user.email) to the helper to enable the new check.

@github-actions github-actions Bot added size:L 100~500 LoC and removed size:S 10~30 LoC labels May 27, 2026
@github-actions
Copy link
Copy Markdown
Contributor

Coverage Report for react-coverage (./react)

Status Category Percentage Covered / Total
🔵 Lines 6.52% 1799 / 27572
🔵 Statements 5.34% 1994 / 37279
🔵 Functions 5.27% 297 / 5631
🔵 Branches 3.73% 1300 / 34831
File Coverage
File Stmts Branches Functions Lines Uncovered Lines
Changed Files
react/src/components/DefaultProviders.tsx 26.76% 14.7% 5.88% 27.53% 92, 104-124, 164-182, 189-218, 228-231, 236-258, 264-324
react/src/components/LoginView.tsx 0% 0% 0% 0% 56-1146
Generated in workflow #1123 for commit bdbe490 by the Vitest Coverage Report Action

@github-actions github-actions Bot added size:M 30~100 LoC and removed size:L 100~500 LoC labels May 27, 2026
@agatha197 agatha197 changed the base branch from main to graphite-base/7610 May 27, 2026 10:04
@agatha197 agatha197 force-pushed the e2e/FR-2982-assert-inviter-email-in-invitation-modal branch from c89cb25 to cbe1693 Compare May 27, 2026 10:04
@agatha197 agatha197 changed the base branch from graphite-base/7610 to fix/FR-2979-shared-folder-invite-sender May 27, 2026 10:04
@agatha197 agatha197 requested review from nowgnuesLee and yomybaby May 28, 2026 02:32
@agatha197 agatha197 changed the base branch from fix/FR-2979-shared-folder-invite-sender to graphite-base/7610 May 28, 2026 02:54
agatha197 and others added 4 commits May 28, 2026 02:54
…rtion

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Fix `.nth(1)` → `.first()` for the Create Folder button in both
  `createVFolderAndVerify` (test-util.ts) and the two `beforeEach` blocks
  in vfolder-crud.spec.ts after FR-2691 removed the top action card.
- Fix `restoreVFolderAndVerify` to wait for the Restore button to reach
  DELETE_PENDING state and confirm the Popconfirm that gates the action.
- Remove brittle `/deleted forever/i` notification assertion from
  `deleteForeverAndVerifyFromTrash`; rely on row-gone check instead.
- Make inviter-email assertion in `acceptAllInvitationAndVerifySpecificFolder`
  conditional on the backend actually returning `inviter_user_email` (some
  RC builds pass the version check but omit the field).
- Increase `test.setTimeout` for VFolder Sharing and lifecycle tests from
  90 s to 180 s.
- Wrap host-app children in `I18nextProvider(i18n)` inside
  `DefaultProviders.tsx` and `LoginView.tsx` to prevent BUI's
  `BAIConfigProvider`→`I18nextProvider` from leaking into the host app's
  `useTranslation()` calls when pnpm deduplicates `react-i18next`.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@agatha197 agatha197 force-pushed the e2e/FR-2982-assert-inviter-email-in-invitation-modal branch from cbe1693 to 654d33d Compare May 28, 2026 02:54
@agatha197 agatha197 force-pushed the graphite-base/7610 branch from 147f8b1 to 25baf00 Compare May 28, 2026 02:54
@agatha197 agatha197 changed the base branch from graphite-base/7610 to fix/FR-2979-shared-folder-invite-sender May 28, 2026 02:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:M 30~100 LoC

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Assert inviter email is shown in folder invitation modal during vFolder share E2E

2 participants