Add frontend UX unit tests for #331 visual features #339
Labels
No labels
agent:fix_bugfix
agent:fix_conflicts
agent:fix_security
agent:gap_analysis
agent:implement
agent:open_issues
agents
agent:security_audit
agent:verify
area
timecurve
arena
arena-v2
audit
block:feature_review
block:security
bug
contracts
design
devops
docs
documentation
enhancement
epic
feature
frontend
indexer
low priority
megaeth
operations
ops
performance
QA
qa checklist
referrals
removal
security
smart-contracts
tech-debt
testing
time-arena
timecurve
visual-qa
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
code/yieldomega#339
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Parent
Gap analysis follow-up from #331.
Current codebase
timeArenaUx.test.ts, carousel locks, head-shake nonce, buy projected effects) — 694 Vitest tests passing.Why needed
Consolidate regression tests once visual work lands (next-level locks, level-up popover, buy toasts, while-you-were-away modal, level history in profile). Satisfies parent SYSTEM requirement: full unit tests with happy/sad paths.
Constraints / guardrails
timeArenaUx.test.ts/arenaBuyProjectedEffects.test.ts— focus on wiring + render + state transitions.Relevant files
frontend/src/pages/arena/ArenaSimplePage.test.tsxfrontend/src/lib/arenaProgression.test.tsfrontend/src/components/WalletProfileModalSections.test.tsxfrontend/src/pages/arena/indexerFirstDisplay.test.tsRecommended direction
frontend-content-audit.md#331 rows if applicable (coordinate with E2E issue).Acceptance criteria
cd frontend && npm run typecheck && npm run lint && npm test— all pass.Test plan
cd frontend && npm run typecheck && npm run lint && npm testfrontend/src/**/*.test.ts(x)Attack / abuse test plan
Verification criteria
Dependencies
Do not start until all #331 VISUAL child issues are closed.
mentioned in issue #331
mentioned in merge request !514
mentioned in commit
bbf6bbb3f7Verification — #339 (frontend UX unit tests for #331 visual features)
Branch:
main@bbf6bbb3(MRissue-339-frontend-ux-unit-testsalready merged)Verifier: Cloud agent QA pass
Acceptance criteria
TimeArenaPage,arenaVisualUxHooks), reduced motion / L1 no celebration (LevelUpCelebrationPopover,arenaLevelUpCelebration), empty level history (#336), empty toast list (#337), malformed WYWA payload (#338)cd frontend && npm run typecheck && npm run lint && npm testrg '\.toMatchSnapshot|toMatchInlineSnapshot' frontend/src/**/*.test.*— no matchesChild issue → test file(s) → PASS
arenaProgression.test.ts,ArenaSimplePodiumSection.test.tsx,ArenaTimerPodiumCarousel.test.tsx,ArenaSimplePage.test.tsx(#331 visual feature wiring)arenaLevelUpCelebration.test.ts,LevelUpCelebrationPopover.test.tsx,arenaVisualUxHooks.test.ts,ArenaSimplePage.test.tsxWalletProfileModalSections.test.tsxarenaBuyEffectToastLines.test.ts,ArenaEffectToastStack.test.tsx,mobileBuyEffectToastLayout.test.ts,arenaVisualUxHooks.test.ts,ArenaSimplePage.test.tsxwhileYouWereAwayActivity.test.ts,arenaSessionClose.test.ts,WhileYouWereAwayModal.test.tsx,indexerApi.test.ts,arenaVisualUxHooks.test.ts,TimeArenaPage.test.tsxAttack / abuse plan
whileYouWereAwayActivity.test.ts(not-a-number, empty epochs)arenaVisualUxHooks.test.ts(indexerBaseUrlunset),TimeArenaPage.test.tsx(no modal when hook state null)Indexer-first invariant (#301)
SKIP — not in #339 scope; existing
indexerFirstDisplay.test.tsunchanged and still passes in full suite.Dependency note
Visual child #337 remains open for its own
agent:verifypass (screenshots/E2E). #339 unit-test coverage for #337 is present onmain; #339 does not block on #337 closure.Follow-ups
Closing as verified on
main.mentioned in issue #340