Skip to content

test(wallets): assert address-generation status, not just dialog-open state - #920

Merged
lklimek merged 1 commit into
v1.0-devfrom
test/add-receiving-address-status-assertion
Jul 21, 2026
Merged

test(wallets): assert address-generation status, not just dialog-open state#920
lklimek merged 1 commit into
v1.0-devfrom
test/add-receiving-address-status-assertion

Conversation

@Claudius-Maginificent

Copy link
Copy Markdown
Collaborator

TL;DR: Strengthen the "Add Receiving Address" regression test so it actually proves a new address was requested, not just that the dialog opened.

Detailed discussion

This is a test-only hardening change with no user-observable effect, so User story/Scenario are omitted per convention.

What was done

  • Follow-up to fix(wallets): wire "Add Receiving Address" to the same flow as "Receive" #914 ("wire 'Add Receiving Address' to the same flow as 'Receive'"), which fixed the button but got squash-merged before this test-hardening commit could be pushed to the same branch — reapplied here as a standalone PR.
  • The original kittest regression only asserted the Receive dialog's static "Core Address" label, which renders whenever the Core address type is selected — regardless of whether a new address was actually requested. A regression that reopens the dialog but silently drops the queue_core_address_request call would still have passed.
  • Added an assertion on the "Generating a new address…" status label, which is only set when queue_core_address_request actually fires — so the test now proves the fix's actual behavior, not just a side effect of it.

Testing

  • add_receiving_address_button_opens_receive_dialog kittest — PASS (cargo test --test kittest --all-features, narrowest relevant scope).
  • cargo fmt --all -- --check clean.

Breaking changes

None.

Checklist

  • Tests added
  • No secrets in diff

Prior work

Attribution

🤖 Co-authored by Claudius the Magnificent AI Agent

… state

The kittest regression for the "Add Receiving Address" button fix only
asserted the Receive dialog's static "Core Address" label, which renders
whenever the Core address type is selected regardless of whether a new
address was actually requested. A regression that reopens the dialog but
silently drops the queue_core_address_request call would still pass.

Add an assertion on the "Generating a new address…" status label, which
is only set when queue_core_address_request actually fires.

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

coderabbitai Bot commented Jul 21, 2026

Copy link
Copy Markdown
Contributor

Warning

Review limit reached

@lklimek, you've reached your PR review limit, so we couldn't start this review.

Next review available in: 3 minutes

Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available.
You're only billed for reviews past your plan's rate limits ($0.25/file).

How can I continue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews.

How do review limits work?

CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability.

For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window.

Please refer docs for additional details.

Review details
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 9953bc51-573a-4dbb-b623-92d864a1450b

📥 Commits

Reviewing files that changed from the base of the PR and between 5d225f2 and 453beb0.

📒 Files selected for processing (1)
  • tests/kittest/wallets_screen.rs
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch test/add-receiving-address-status-assertion

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@lklimek
lklimek marked this pull request as ready for review July 21, 2026 12:53
@lklimek
lklimek enabled auto-merge (squash) July 21, 2026 12:53
@thepastaclaw

Copy link
Copy Markdown
Collaborator

🕓 Ready for review — 47 ahead in queue (commit 453beb0)
Queue position: 48/49

@lklimek
lklimek merged commit 81fddd0 into v1.0-dev Jul 21, 2026
5 of 6 checks passed
@lklimek
lklimek deleted the test/add-receiving-address-status-assertion branch July 21, 2026 13:03
orchardpaytl pushed a commit to orchardpaytl/orchardpay that referenced this pull request Jul 21, 2026
Brings in: shutdown fix (dashpay#905), duplicate-DPNS-name error message
(dashpay#915), startup banner clearing (dashpay#916), nav pointer cursor + tooltips
and wallet-less masternode indication (dashpay#917), onboarding disconnected-
banner suppression (dashpay#907), masternode dialog/nav/passphrase fixes
(dashpay#913), DAPI auto-refresh during pre-1.0 migration (dashpay#908), "Add
Receiving Address" wiring + its test hardening (dashpay#914, dashpay#920), and a CI
timeout bump (dashpay#912). dashpay#906 (shielded re-enable) was already pulled in
individually last session, so its squashed commit merged as a no-op.

Conflicts (6 files) were rebrand-naming overlaps (dash_evo_tool::  vs
orchardpay::  imports) plus one real merge in left_panel.rs, where
OrchardPay's green-icon tint had to combine with upstream's new nav
tooltip. Also fixed 5 files upstream's auto-merged (non-conflicting)
additions left un-rebranded: a stray DASH_EVO_DATA_DIR_LOCK/env-var
name in a new app.rs test, and dash_evo_tool:: references in three
kittest test files.

Added tooltip strings for OrchardPay's own nav entries (OrchardPay,
DashPay) so the new every_nav_entry_has_a_tooltip test covers them —
upstream's version only knows its own nav items. Fixed the new
nav_label_hover_shows_pointer_cursor kittest test: OrchardPay's nav
rail carries two more always-visible entries than upstream's, pushing
"Settings" below the scrollable list's default-size visible viewport;
scroll it into view first, matching what a real user would do.

Verified: cargo check (both feature modes), cargo clippy --all-features
--all-targets -- -D warnings, cargo fmt --all, cargo test --all-features
--workspace (2066 lib + 257 kittest + doc tests, 0 failed), all clean.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants