Skip to content

Tests for blockchain-extension crates. #906

@evanlinjin

Description

@evanlinjin

Blockchain crates such as bdk_esplora and bdk_electrum should have comprehensive tests on their extension trait methods (outputs of these methods should be as expected given different scenarios).

Although we want to test the extension methods under the same set of scenarios, the syncing/scanning logic of each example is unique, so we want to check the outputs individually. Additionally, we may change the API of these extension methods so we do not want to deal with the hassle of maintaining additional generic/wrapper code.

We will provide the extension methods real blockchain data via the bitcoind and electrsd crates.

We will maintain a list of scenarios in this ticket description (I will update it via suggestions in the comments below).

Scenarios

  • Ensure stop_gap functions correctly. Does the methods correctly process a transaction history with self-sends right at the boundaries of the input stop_gap?
  • If we provide the methods with "already-reorged" data, is the output as expected? I.e. Does the returned SparseChain/ChainGraph contain checkpoints at agreement_point and invalid_from indexes.

Original ticket: LLFourn/bdk_core_staging#156

Metadata

Metadata

Type

No type

Projects

Status

Done

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions