bitcoindevkit / bitcoindevkit/bdk-dart

test: smoke test repeated Wallet.keychains() calls across Dart wallet lifecycle

Open Beginner friendly
#105 2 comments 0 reactions 0 assignees View on GitHub
good first issue testing
Dominant language
Dart
Stars
13
Forks
20
Avg merge
24m
Merged PRs (30d)
3

Description

### Description
Add a narrow Dart-side smoke test that calls `Wallet.keychains()` more than once across a simple wallet lifecycle.

This is not intended to expand the randomized sequence canary or retest wallet keychain behavior owned by `bdk-ffi`. The goal is only to prove that the generated Dart binding path remains callable after Dart side wallet operations such as persist and reload.

This complements #104: #104 verifies the returned `List` lifts into usable Dart objects; this issue verifies the same generated path can be called again after the wallet has gone through a basic lifecycle.

### Scope
- Create a wallet in Dart.
- Call `wallet.keychains()` once before persistence.
- Persist and reload the wallet using sqlite.
- Call `wallet.keychains()` again after reload.
- Keep assertions limited to binding callability and returned Dart object usability.

Contributor guide

Open the contributing guide

Research direction

Start by locating the existing Dart wallet lifecycle tests and the complementary coverage from #104. Exercise Wallet.keychains() before persistence and again after sqlite reload, keeping assertions to successful binding calls and usable returned Dart objects; done means both calls work across the lifecycle.

Written by the indexing model from the issue text.

Assessment

Tech stack
dart, sqlite
Domain
database, testing
Issue type
Feature
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
68/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.