git / moonbite-core / src/test/policy_fee_tests.cpp · raw
// Copyright (c) 2020 The Bitcoin Core developers// Distributed under the MIT software license, see the accompanying// file COPYING or http://www.opensource.org/licenses/mit-license.php.#include <amount.h>#include <policy/fees.h>#include <test/util/setup_common.h>#include <boost/test/unit_test.hpp>BOOST_FIXTURE_TEST_SUITE(policy_fee_tests, BasicTestingSetup)BOOST_AUTO_TEST_CASE(FeeRounder){ FeeFilterRounder fee_rounder{CFeeRate{1000}}; // check that 1000 rounds to 974 or 1071 std::set<CAmount> results; while (results.size() < 2) { results.emplace(fee_rounder.round(1000)); } BOOST_CHECK_EQUAL(*results.begin(), 974); BOOST_CHECK_EQUAL(*++results.begin(), 1071); // check that negative amounts rounds to 0 BOOST_CHECK_EQUAL(fee_rounder.round(-0), 0); BOOST_CHECK_EQUAL(fee_rounder.round(-1), 0); // check that MAX_MONEY rounds to 9170997 BOOST_CHECK_EQUAL(fee_rounder.round(MAX_MONEY), 9170997);}BOOST_AUTO_TEST_SUITE_END()