Closed notmandatory closed 1 year ago
My SoB mentees are working on refactoring the test modules.. Makes sense to add this into their scope of project?? Should not be too much work, or we need it before than that??
I think that'd be great if your SoB mentees have time for this too. But before they start we should get @afilini to confirm this is what he has in mind.
I've edited the pr body to remove some tests which I think were actually blockchain related (testing sync edge cases).
On top of the tests we already have which should just be moved, I would focus on testing interoperability with Core using psbts, for example creating a psbt in core and signing it with bdk, and vice versa.
Core has a few different rpcs for dealing with psbts, so we should also consider testing against them to see if we are compatible (like utxoupdatepsbt
).
It would also be helpful to add some tests that spend utxos using non standard sighashes (for both taproot and segwit/legacy), because we are already testing that BDK applies them correctly, but we never check the signatures produced.
Having a Core instance available is helpful because we can try broadcasting the tx and Core will validate every aspect of it and let us know if there are any problems.
Is sending a TX to Core to broadcast better than using bitcoinconsensus
code with the verify_tx
function ?
Is sending a TX to Core to broadcast better than using bitcoinconsensus code with the verify_tx function ?
I would guess so.. I think bitcoinconsensus
only verifies that the script execution passes as per consensus rules.. But there are many other policies (p2p, mempool) etc that are enforced by core on top of that..
In light of recent update with #624 .. Is this issue still relevant??
It looks like the above tests are still grouped together with the blockchain tests after being converted from macros to functions. I think we should still leave this open, but it can be done after #624 is merged.
I'm closing this since all the tests are going to be changing with the new bdk_core 1.0.0 work.
This came up during testing for #593, see https://github.com/afilini/bdk/pull/4#issuecomment-1140845581.
TestClient
and related impls to testutils/mod.rsbdk_wallet_tests
macro.bdk_blockchain_tests
to newbdk_wallet_tests
macro, in particular:Open for suggestions/discussion before making any changes.