bitcoindevkit / bitcoindevkit/bdk-dart
test: smoke test repeated Wallet.keychains() calls across Dart wallet lifecycle
- 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
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