Skip to content

Commit

Permalink
Including tx fee into block rewards
Browse files Browse the repository at this point in the history
  • Loading branch information
ShengguangXiao committed Sep 22, 2021
1 parent 6059de0 commit e377b81
Show file tree
Hide file tree
Showing 3 changed files with 43 additions and 1 deletion.
2 changes: 1 addition & 1 deletion src/miner.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -239,7 +239,7 @@ std::unique_ptr<CBlockTemplate> BlockAssembler::CreateNewBlock(const CScript& sc
coinbaseTx.vout.resize(2);

// Explicitly set miner reward
coinbaseTx.vout[0].nValue = CalculateCoinbaseReward(blockReward, consensus.dist.masternode);
coinbaseTx.vout[0].nValue = nFees + CalculateCoinbaseReward(blockReward, consensus.dist.masternode);

// Community payment always expected
coinbaseTx.vout[1].scriptPubKey = consensus.foundationShareScript;
Expand Down
41 changes: 41 additions & 0 deletions test/functional/feature_block_reward.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
#!/usr/bin/env python3
# Copyright (c) 2014-2019 The Bitcoin Core developers
# Copyright (c) DeFi Blockchain Developers
# Distributed under the MIT software license, see the accompanying
# file LICENSE or http://www.opensource.org/licenses/mit-license.php.
"""Test account mining behaviour"""

from test_framework.test_framework import DefiTestFramework
from test_framework.authproxy import JSONRPCException
from test_framework.util import (
assert_greater_than,
assert_equal
)
from decimal import Decimal

class BlockRewardTest(DefiTestFramework):
def set_test_params(self):
self.num_nodes = 1
self.setup_clean_chain = True
self.extra_args = [['-txnotokens=0', '-amkheight=50', '-eunosheight=100', '-eunosheight=100', '-subsidytest=1']]

def run_test(self):
node = self.nodes[0]
node.generate(120)

result = node.listaccounthistory("mine", {"depth":0})
assert_equal(result[0]["amounts"][0], '134.99983200@DFI')

account = node.getnewaddress()
txid = node.utxostoaccount({account: "1.1@0"})
txid = node.utxostoaccount({account: "1.2@0"})
txid = node.utxostoaccount({account: "1.3@0"})
node.generate(1)

result = node.listaccounthistory("mine", {"depth":0})
for subResult in result:
if subResult["type"] == "blockReward":
assert_greater_than(subResult["amounts"][0], '134.99983200@DFI')

if __name__ == '__main__':
BlockRewardTest().main ()
1 change: 1 addition & 0 deletions test/functional/test_runner.py
Original file line number Diff line number Diff line change
Expand Up @@ -257,6 +257,7 @@
'feature_burn_address.py',
'feature_eunos_balances.py',
'feature_sendutxosfrom.py',
'feature_block_reward.py',
# Don't append tests at the end to avoid merge conflicts
# Put them in a random line within the section that fits their approximate run-time
]
Expand Down

0 comments on commit e377b81

Please sign in to comment.