tx_out.cpp raw

   1  // Copyright (c) 2019-2022 The Limenka developers
   2  // Distributed under the MIT software license, see the accompanying
   3  // file COPYING or http://www.opensource.org/licenses/mit-license.php.
   4  
   5  #include <consensus/validation.h>
   6  #include <core_memusage.h>
   7  #include <policy/feerate.h>
   8  #include <policy/policy.h>
   9  #include <primitives/transaction.h>
  10  #include <streams.h>
  11  #include <test/fuzz/fuzz.h>
  12  
  13  FUZZ_TARGET(tx_out)
  14  {
  15      DataStream ds{buffer};
  16      CTxOut tx_out;
  17      try {
  18          ds >> tx_out;
  19      } catch (const std::ios_base::failure&) {
  20          return;
  21      }
  22  
  23      const CFeeRate dust_relay_fee{DUST_RELAY_TX_FEE};
  24      (void)GetDustThreshold(tx_out, dust_relay_fee);
  25      (void)IsDust(tx_out, dust_relay_fee);
  26      (void)RecursiveDynamicUsage(tx_out);
  27  
  28      (void)tx_out.ToString();
  29      (void)tx_out.IsNull();
  30      tx_out.SetNull();
  31      assert(tx_out.IsNull());
  32  }
  33