test: expand and consolidate playwright e2e suite with cross-browser matrix#77
Conversation
|
@Dubemtopsite is attempting to deploy a commit to the truthixify's projects Team on Vercel. A member of the Team first needs to authorize it. |
|
@Dubemtopsite Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits. You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀 |
|
Conflicts in 7 files. Solid e2e suite under git fetch origin
git rebase origin/develop
git push --force-with-leaseWhen resolving:
|
|
Have fixed them @truthixify |
|
Sorry @Dubemtopsite — #90 (RPC retry) just landed and touched git fetch origin
git rebase origin/develop
# StellarReceive: keep develop's retry wrapper around the RPC calls, then re-apply your test-friendly props
git push --force-with-lease |
|
Fixed @truthixify |
|
#92 just landed (WalletConnect v2) which added deps to git fetch origin
git rebase origin/develop
# pnpm-lock.yaml: easiest is to take develop's version then re-run `pnpm install` to add your own deps back
pnpm install
git add pnpm-lock.yaml
# also resolve any src/components/WalletConnect.tsx conflict — keep develop's WalletConnect integration
git rebase --continue
git push --force-with-lease |
|
Fixed |
|
Almost there! After #91 (QR/camera scan) just landed, only git fetch origin
git rebase origin/develop
pnpm install
git add pnpm-lock.yaml
git rebase --continue
git push --force-with-lease |
|
u can now check it again |
|
Rebased cleanly. 290+375-line playwright fixtures + Stellar e2e spec + cross-browser CI matrix is exactly what the demo needed. Substantial. Thanks @Dubemtopsite. |
|
You are welcome @truthixify |
Playwright E2E Suite Expansion (#56)
Closes #56
Consolidated the isolated Playwright specs into a single orchestrated suite under
e2e/, implemented robust mocks, established a cross-browser CI matrix, fixed critical elliptic curve simulation/signature bugs, and improved component accessibility.Scope & Implementation Details
1. Suite Consolidation & Config
2. Core Mocking Architecture (fixtures.ts)
window.freighterMockwhen connected in tests, eliminating the need to load external web extensions in headless browsers.getEvents,simulateTransaction, andsendTransaction) in the headless page context to allow deterministic, offline E2E runs.3. Critical Bug Fixes
@stellar/stellar-sdk'sassembleTransactionfailed when parsing the dummy transaction data returned by simulation. Fixed it by returning a valid base64-encodedSorobanTransactionDatastructure (AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=).tx.addSignatureand throws an error if mathematically invalid. Resolved by deriving a mathematically consistent Stellar address (GAL77LMANDOA32MTLU3GG3Z22G2543PDIE5REOEOIU5QL4VEYHJ5WKON) corresponding to the private key scalar (123456789n) used to sign.page.getByText('Stealth Key')in test 14 by adding{ exact: true }.4. Accessibility & UI Adjustments
htmlForandidtags. This ensures clean programmatic access for testers/screen readers.E2E Scenarios (15 Scenarios Covered)
st:eth:).Validation Status
pnpm formatto resolve all style linting.pnpm buildruns cleanly with no errors.