Skip to content

Commit

Permalink
test: add functional test for tagged MiniWallet instances
Browse files Browse the repository at this point in the history
  • Loading branch information
theStack committed Jun 11, 2024
1 parent 3162c91 commit e4b0dab
Showing 1 changed file with 18 additions and 0 deletions.
18 changes: 18 additions & 0 deletions test/functional/feature_framework_miniwallet.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,9 @@
# Distributed under the MIT software license, see the accompanying
# file COPYING or http://www.opensource.org/licenses/mit-license.php.
"""Test MiniWallet."""
import random
import string

from test_framework.blocktools import COINBASE_MATURITY
from test_framework.test_framework import BitcoinTestFramework
from test_framework.util import (
Expand Down Expand Up @@ -31,6 +34,20 @@ def test_tx_padding(self):
assert_greater_than_or_equal(tx.get_weight(), target_weight)
assert_greater_than_or_equal(target_weight + 3, tx.get_weight())

def test_wallet_tagging(self):
"""Verify that tagged wallet instances are able to send funds."""
self.log.info(f"Test tagged wallet instances...")
node = self.nodes[0]
untagged_wallet = self.wallets[0][1]
for i in range(10):
tag = ''.join(random.choice(string.ascii_letters) for _ in range(20))
self.log.debug(f"-> ({i}) tag name: {tag}")
tagged_wallet = MiniWallet(node, tag_name=tag)
untagged_wallet.send_to(from_node=node, scriptPubKey=tagged_wallet.get_scriptPubKey(), amount=100000)
tagged_wallet.rescan_utxos()
tagged_wallet.send_self_transfer(from_node=node)
self.generate(node, 1) # clear mempool

def run_test(self):
node = self.nodes[0]
self.wallets = [
Expand All @@ -43,6 +60,7 @@ def run_test(self):
self.generate(wallet, COINBASE_MATURITY)

self.test_tx_padding()
self.test_wallet_tagging()


if __name__ == '__main__':
Expand Down

0 comments on commit e4b0dab

Please sign in to comment.