Skip to content

Commit e58ff43

Browse files
committed
test: Silent Payments RBF
1 parent 6f7c389 commit e58ff43

File tree

1 file changed

+28
-1
lines changed

1 file changed

+28
-1
lines changed

test/functional/wallet_silentpayments_receiving.py

+28-1
Original file line numberDiff line numberDiff line change
@@ -135,10 +135,37 @@ def test_import_rescan(self):
135135

136136
assert_approx(alice_wo.getbalance(), 10, 0.0001)
137137

138+
def test_rbf(self):
139+
self.log.info("Check Silent Payments RBF")
140+
141+
self.nodes[0].createwallet(wallet_name="craig", silent_payment=True)
142+
wallet = self.nodes[0].get_wallet_rpc("craig")
143+
address = wallet.getnewaddress(address_type="silent-payment")
144+
145+
txid = self.def_wallet.sendtoaddress(address, 49.99, replaceable=True)
146+
assert_equal(self.nodes[0].getrawmempool(), [txid])
147+
raw_tx = self.nodes[0].getrawtransaction(txid)
148+
tx = self.nodes[0].decoderawtransaction(raw_tx)
149+
assert_equal(len(tx["vin"]), 1)
150+
151+
psbt = self.def_wallet.psbtbumpfee(txid, fee_rate=10000)["psbt"]
152+
decoded = self.nodes[0].decodepsbt(psbt)
153+
assert_equal(len(decoded["tx"]["vin"]), 2)
154+
155+
res = self.def_wallet.walletprocesspsbt(psbt)
156+
assert_equal(res["complete"], True)
157+
txid = self.def_wallet.sendrawtransaction(res["hex"])
158+
assert_equal(self.nodes[0].getrawmempool(), [txid])
159+
160+
assert_equal(wallet.getbalance(), 0)
161+
self.generate(self.nodes[0], 1)
162+
assert_approx(wallet.getbalance(), 49.99, 0.0001)
163+
138164
def run_test(self):
139165
self.def_wallet = self.nodes[0].get_wallet_rpc(self.default_wallet_name)
140-
self.generate(self.nodes[0], 101)
166+
self.generate(self.nodes[0], 102)
141167

168+
self.test_rbf()
142169
self.test_createwallet()
143170
self.test_encrypt_and_decrypt()
144171
self.test_encrypting_unencrypted()

0 commit comments

Comments
 (0)