bdk-ffi/tests/test_bdk.py

47 lines
1.6 KiB
Python
Raw Normal View History

2021-12-07 10:25:42 -05:00
import bdkpython as bdk
2022-05-11 16:02:49 -04:00
import unittest
2021-12-07 10:25:42 -05:00
# taken from bdk test suite @ https://github.com/bitcoindevkit/bdk/blob/master/src/descriptor/template.rs#L676
descriptor = "wpkh(tprv8ZgxMBicQKsPcx5nBGsR63Pe8KnRUqmbJNENAfGftF3yuXoMMoVJJcYeUw5eVkm9WBPjWYt6HMWYJNesB5HaNVBaFc1M6dRjWSYnmewUMYy/84h/0h/0h/0/*)"
db_config = bdk.DatabaseConfig.MEMORY()
2022-05-11 16:02:49 -04:00
blockchain_config = bdk.BlockchainConfig.ELECTRUM(
bdk.ElectrumConfig(
"ssl://electrum.blockstream.info:60002",
None,
5,
None,
100
)
2021-12-07 10:25:42 -05:00
)
2022-05-11 16:02:49 -04:00
blockchain = bdk.Blockchain(blockchain_config)
2021-12-07 10:25:42 -05:00
2022-05-11 16:02:49 -04:00
class TestSimpleBip84Wallet(unittest.TestCase):
def test_address_bip84_testnet(self):
wallet = bdk.Wallet(
descriptor=descriptor,
change_descriptor=None,
network=bdk.Network.TESTNET,
database_config=db_config
)
address = wallet.get_new_address()
# print(f"New address is {address}")
assert address == "tb1qkmvk2nadgplmd57ztld8nf8v2yxkzmdvvztyse", f"Wrong address {address}, should be tb1qkmvk2nadgplmd57ztld8nf8v2yxkzmdvvztyse"
2021-12-07 10:25:42 -05:00
2022-05-11 16:02:49 -04:00
def test_wallet_balance(self):
wallet = bdk.Wallet(
descriptor=descriptor,
change_descriptor=None,
network=bdk.Network.TESTNET,
database_config=db_config,
)
wallet.sync(blockchain, None)
balance = wallet.get_balance()
# print(f"Balance is {balance} sat")
assert balance > 0, "Balance is 0, send testnet coins to tb1qkmvk2nadgplmd57ztld8nf8v2yxkzmdvvztyse"
2022-05-11 16:02:49 -04:00
if __name__ == '__main__':
unittest.main()