Skip to content
Alexei Zamyatin edited this page Aug 5, 2019 · 1 revision

Wiki

Testcases

Testcases to generate via bitcoin-core regtest mode:

Notation:

  • k - security parameter defined, example defined for testing

  • Mine k blocks

  • Send transaction, mine k blocks on top

  • Mine 1 block, fork that block, mine k blocks on new main chain

  • Mine k blocks on one chain, mine k block on another chain, and another k blocks on a 3rd chain. Used for following test cases:

    • Mine 1 block, submit 2 blocks on other chain, submit another k blocks on first chain
    • Mine 1 blocks on 1st chain, start fork submission with 1 block, start another fork submission with 1 block, submit 1 block on 1st chain, submit 2 blocks on 2nd for (becoming main chain), submit 3 blocks on 3rd chain (becoming main chain), submit rest of k-2 blocks on 1st chain (overriding others and becoming main chain)
  • Mine 2k blocks - k before diff adjustment, k after diff adjustment.

  • Mine k blocks starting pos. 0, mine blocks until diff adjustment:

    • record k blocks with diff
    • record k blocks without diff adjustment

...

Check old btcrelay for more testcases

Clone this wiki locally