Changeset View
Changeset View
Standalone View
Standalone View
src/test/miner_tests.cpp
Show All 22 Lines | |||||
#include <validation.h> | #include <validation.h> | ||||
#include <test/test_bitcoin.h> | #include <test/test_bitcoin.h> | ||||
#include <boost/test/unit_test.hpp> | #include <boost/test/unit_test.hpp> | ||||
#include <memory> | #include <memory> | ||||
struct CBlockTemplateEntryTest { | |||||
static void AccountForParent(CBlockTemplateEntry &e, | |||||
const CBlockTemplateEntry &p) { | |||||
return e.AccountForParent(p); | |||||
} | |||||
}; | |||||
BOOST_FIXTURE_TEST_SUITE(miner_tests, TestingSetup) | BOOST_FIXTURE_TEST_SUITE(miner_tests, TestingSetup) | ||||
static CFeeRate blockMinFeeRate = CFeeRate(DEFAULT_BLOCK_MIN_TX_FEE_PER_KB); | static CFeeRate blockMinFeeRate = CFeeRate(DEFAULT_BLOCK_MIN_TX_FEE_PER_KB); | ||||
static struct { | static struct { | ||||
uint8_t extranonce; | uint8_t extranonce; | ||||
uint32_t nonce; | uint32_t nonce; | ||||
} blockinfo[] = { | } blockinfo[] = { | ||||
▲ Show 20 Lines • Show All 737 Lines • ▼ Show 20 Lines | BOOST_AUTO_TEST_CASE(TestCBlockTemplateEntry) { | ||||
CBlockTemplateEntry txEntry(txRef, 1 * SATOSHI, 200, 10); | CBlockTemplateEntry txEntry(txRef, 1 * SATOSHI, 200, 10); | ||||
BOOST_CHECK_MESSAGE(txEntry.tx == txRef, "Transactions did not match"); | BOOST_CHECK_MESSAGE(txEntry.tx == txRef, "Transactions did not match"); | ||||
BOOST_CHECK_EQUAL(txEntry.txFee, 1 * SATOSHI); | BOOST_CHECK_EQUAL(txEntry.txFee, 1 * SATOSHI); | ||||
BOOST_CHECK_EQUAL(txEntry.txSize, 200); | BOOST_CHECK_EQUAL(txEntry.txSize, 200); | ||||
BOOST_CHECK_EQUAL(txEntry.txSigOps, 10); | BOOST_CHECK_EQUAL(txEntry.txSigOps, 10); | ||||
BOOST_CHECK_EQUAL(txEntry.packageFee, 1 * SATOSHI); | BOOST_CHECK_EQUAL(txEntry.packageFee, 1 * SATOSHI); | ||||
BOOST_CHECK_EQUAL(txEntry.packageSize, 200); | BOOST_CHECK_EQUAL(txEntry.packageSize, 200); | ||||
BOOST_CHECK_EQUAL(txEntry.packageSigOps, 10); | BOOST_CHECK_EQUAL(txEntry.packageSigOps, 10); | ||||
CBlockTemplateEntry txChildEntry(txRef, 10 * SATOSHI, 2000, 20); | |||||
CBlockTemplateEntryTest::AccountForParent(txChildEntry, txEntry); | |||||
BOOST_CHECK_EQUAL(txChildEntry.txFee, 10 * SATOSHI); | |||||
BOOST_CHECK_EQUAL(txChildEntry.txSize, 2000); | |||||
BOOST_CHECK_EQUAL(txChildEntry.txSigOps, 20); | |||||
BOOST_CHECK_EQUAL(txChildEntry.packageFee, 11 * SATOSHI); | |||||
BOOST_CHECK_EQUAL(txChildEntry.packageSize, 2200); | |||||
BOOST_CHECK_EQUAL(txChildEntry.packageSigOps, 30); | |||||
} | } | ||||
BOOST_AUTO_TEST_SUITE_END() | BOOST_AUTO_TEST_SUITE_END() |