The constructor should create transaction object with fee parameter provided in the JSON object. It should invalidate a transaction if the fee of the transaction does not match the fee of the transaction type when validate() function is called.
Actual behavior
The fee of transaction is overwritten in the constructor of each transaction type. Which is not a correct behaviour since genesis block contains transactions with 0 fee.
Steps to reproduce
N/A
Which version(s) does this affect? (Environment, OS, etc...)
Expected behavior
The constructor should create transaction object with fee parameter provided in the JSON object. It should invalidate a transaction if the fee of the transaction does not match the fee of the transaction type when validate() function is called.
Actual behavior
The fee of transaction is overwritten in the constructor of each transaction type. Which is not a correct behaviour since genesis block contains transactions with 0 fee.
Steps to reproduce
N/A
Which version(s) does this affect? (Environment, OS, etc...)
2.1.0