Skip to content

fix: E2E selector bug, networkidle timeouts on stream detail page - #1024

Merged
Austinaminu2 merged 1 commit into
FlowwStar:mainfrom
Ndifreke000:fix/ndifreke000-batch
Oct 18, 2026
Merged

Austinaminu2 merged 1 commit into
FlowwStar:mainfrom
Ndifreke000:fix/ndifreke000-batch

Conversation

@Ndifreke000

Copy link
Copy Markdown
Contributor

Summary

Bundles fixes/verification for four FlowStar issues assigned to me.

  • E2E: fix invalid CSS selector in contract-integration.spec.ts #902 — contract-integration.spec.ts's should validate recipient address format test used a malformed CSS selector (input[placeholder*="recipient" — missing closing ]), which threw a selector parse error. Replaced it with page.getByPlaceholder(/recipient/i).
  • E2E: replace waitForLoadState('networkidle') on the stream detail page #901 — The stream detail page (/app/stream/*) polls continuously, so waitForLoadState('networkidle') never resolves and times out after 30s. Replaced the three networkidle waits scoped to that page (the stream-detail axe scan, and the Cancel-stream and Fee-estimate dialog beforeEach hooks in accessibility.spec.ts) with a wait for the loading skeleton (div.space-y-6.animate-pulse) to detach — a concrete, deterministic signal that the page has finished its initial render instead of waiting on network quiescence.
  • bug: TopUpEvent missing #[soroban_sdk::contractevent] attribute in contract #139 — Verified honestly: already resolved in the current main. StreamTransferEvent has its closing brace and TopUpEvent already carries #[soroban_sdk::contractevent] (contracts/streaming/src/lib.rs lines ~305-325). No code change needed.
  • Replace panic! with Soroban contracterror enum #1 — Verified honestly: already resolved in the current main. There are zero panic!() calls in contracts/streaming/src/lib.rs; a #[contracterror] pub enum StreamError already exists and all mutating entry points return Result<T, StreamError>. No code change needed.

Test plan

  • Run e2e/contract-integration.spec.ts and confirm the recipient-format test no longer throws a selector parse error.
  • Run e2e/accessibility.spec.ts chromium-desktop and confirm the stream-detail axe scan, Cancel-stream suite, and Fee-estimate suite no longer time out on networkidle.
  • Confirm cargo test still passes for contracts/streaming (no contract code was changed).

Closes #902
Closes #901
Closes #139
Closes #1

🤖 Generated with Claude Code

- contract-integration.spec.ts: fix the malformed CSS selector (missing
  closing bracket) in the recipient-address-format test by switching to
  getByPlaceholder, which is also more resilient to markup changes.
- accessibility.spec.ts: the stream detail page polls continuously, so
  waitForLoadState('networkidle') never resolves and times out after 30s.
  Replaced the three networkidle waits scoped to /app/stream/* (the
  stream-detail axe scan, and the Cancel-stream and Fee-estimate dialog
  beforeEach hooks) with a wait for the loading skeleton to detach.

Verified contracts/streaming/src/lib.rs already has StreamTransferEvent
properly closed and TopUpEvent annotated with #[soroban_sdk::contractevent]
(FlowwStar#139), and already uses a #[contracterror] StreamError enum with
Result<T, StreamError> returns instead of panic! (FlowwStar#1) — no changes needed
for those two.

Closes FlowwStar#902
Closes FlowwStar#901
Closes FlowwStar#139
Closes FlowwStar#1

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@drips-wave

drips-wave Bot commented Oct 18, 2026

Copy link
Copy Markdown

@Ndifreke000 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! 🚀

Learn more about application limits

@Austinaminu2
Austinaminu2 merged commit e034741 into FlowwStar:main Oct 18, 2026
1 of 7 checks passed

This branch had an error being deployed

1 failed deployment
staging — 4763a7fa Deployed Oct 18, 2026 by Ndifreke000 via deploy-staging #346
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

2 participants