aboutsummaryrefslogtreecommitdiff
path: root/src/wallet/test
diff options
context:
space:
mode:
authorAndrew Chow <achow101-github@achow101.com>2021-10-12 22:07:18 -0400
committerAndrew Chow <achow101-github@achow101.com>2021-10-15 17:01:51 -0400
commit99516285b7cf2664563712d95d95f54e1985c0c2 (patch)
tree2aeecbdf4d2739735a04ad70bc0dd21c43ca82c6 /src/wallet/test
parentdcd6eeb64adb2b532f5003cbb86ba65b3c08a87b (diff)
downloadbitcoin-99516285b7cf2664563712d95d95f54e1985c0c2.tar.xz
tests: Use legacy change type in subtract fee from outputs test
The subtract fee from outputs assumes that the leftover input amount will be dropped to fees. However this only happens if that amount is less than the cost of change. In the event that it is higher than the cost of change, the leftover amount will actually become a change output. To avoid this scenario, force a change type which has a high cost of change.
Diffstat (limited to 'src/wallet/test')
-rw-r--r--src/wallet/test/spend_tests.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/wallet/test/spend_tests.cpp b/src/wallet/test/spend_tests.cpp
index becef70729..d88d8eabdb 100644
--- a/src/wallet/test/spend_tests.cpp
+++ b/src/wallet/test/spend_tests.cpp
@@ -33,6 +33,8 @@ BOOST_FIXTURE_TEST_CASE(SubtractFee, TestChain100Setup)
CCoinControl coin_control;
coin_control.m_feerate.emplace(10000);
coin_control.fOverrideFeeRate = true;
+ // We need to use a change type with high cost of change so that the leftover amount will be dropped to fee instead of added as a change output
+ coin_control.m_change_type = OutputType::LEGACY;
FeeCalculation fee_calc;
BOOST_CHECK(CreateTransaction(*wallet, {recipient}, tx, fee, change_pos, error, coin_control, fee_calc));
BOOST_CHECK_EQUAL(tx->vout.size(), 1);