test: Fix OverwinterExpiryHeight test after ZIP 203 contextual changes
This commit is contained in:
parent
9a5951aab1
commit
0a78f4c6ec
|
@ -744,17 +744,16 @@ TEST(ChecktransactionTests, OverwinterValidTx) {
|
|||
}
|
||||
|
||||
TEST(ChecktransactionTests, OverwinterExpiryHeight) {
|
||||
CMutableTransaction mtx = GetValidTransaction();
|
||||
const auto& params = RegtestActivateOverwinter();
|
||||
CMutableTransaction mtx = GetValidTransaction(0x5ba81b19);
|
||||
mtx.vJoinSplit.resize(0);
|
||||
mtx.fOverwintered = true;
|
||||
mtx.nVersion = OVERWINTER_TX_VERSION;
|
||||
mtx.nVersionGroupId = OVERWINTER_VERSION_GROUP_ID;
|
||||
mtx.nExpiryHeight = 0;
|
||||
|
||||
{
|
||||
CTransaction tx(mtx);
|
||||
MockCValidationState state;
|
||||
EXPECT_TRUE(CheckTransactionWithoutProofVerification(tx, state));
|
||||
EXPECT_TRUE(ContextualCheckTransaction(tx, state, params, 1, true));
|
||||
}
|
||||
|
||||
{
|
||||
|
@ -762,23 +761,28 @@ TEST(ChecktransactionTests, OverwinterExpiryHeight) {
|
|||
CTransaction tx(mtx);
|
||||
MockCValidationState state;
|
||||
EXPECT_TRUE(CheckTransactionWithoutProofVerification(tx, state));
|
||||
EXPECT_TRUE(ContextualCheckTransaction(tx, state, params, 1, true));
|
||||
}
|
||||
|
||||
{
|
||||
mtx.nExpiryHeight = TX_EXPIRY_HEIGHT_THRESHOLD;
|
||||
CTransaction tx(mtx);
|
||||
MockCValidationState state;
|
||||
EXPECT_TRUE(CheckTransactionWithoutProofVerification(tx, state));
|
||||
EXPECT_CALL(state, DoS(100, false, REJECT_INVALID, "bad-tx-expiry-height-too-high", false)).Times(1);
|
||||
ContextualCheckTransaction(tx, state, Params(), 1, true);
|
||||
ContextualCheckTransaction(tx, state, params, 1, true);
|
||||
}
|
||||
|
||||
{
|
||||
mtx.nExpiryHeight = std::numeric_limits<uint32_t>::max();
|
||||
CTransaction tx(mtx);
|
||||
MockCValidationState state;
|
||||
EXPECT_TRUE(CheckTransactionWithoutProofVerification(tx, state));
|
||||
EXPECT_CALL(state, DoS(100, false, REJECT_INVALID, "bad-tx-expiry-height-too-high", false)).Times(1);
|
||||
CheckTransactionWithoutProofVerification(tx, state);
|
||||
ContextualCheckTransaction(tx, state, params, 1, true);
|
||||
}
|
||||
|
||||
RegtestDeactivateSapling();
|
||||
}
|
||||
|
||||
TEST(checktransaction_tests, BlossomExpiryHeight) {
|
||||
|
|
|
@ -196,6 +196,16 @@ CWalletTx GetValidSproutSpend(const libzcash::SproutSpendingKey& sk,
|
|||
return wtx;
|
||||
}
|
||||
|
||||
const CChainParams& RegtestActivateOverwinter() {
|
||||
SelectParams(CBaseChainParams::REGTEST);
|
||||
UpdateNetworkUpgradeParameters(Consensus::UPGRADE_OVERWINTER, Consensus::NetworkUpgrade::ALWAYS_ACTIVE);
|
||||
return Params();
|
||||
}
|
||||
|
||||
void RegtestDeactivateOverwinter() {
|
||||
UpdateNetworkUpgradeParameters(Consensus::UPGRADE_OVERWINTER, Consensus::NetworkUpgrade::NO_ACTIVATION_HEIGHT);
|
||||
}
|
||||
|
||||
// Sapling
|
||||
const Consensus::Params& RegtestActivateSapling() {
|
||||
SelectParams(CBaseChainParams::REGTEST);
|
||||
|
|
|
@ -37,6 +37,9 @@ struct TestSaplingNote {
|
|||
SaplingMerkleTree tree;
|
||||
};
|
||||
|
||||
const CChainParams& RegtestActivateOverwinter();
|
||||
void RegtestDeactivateOverwinter();
|
||||
|
||||
const Consensus::Params& RegtestActivateSapling();
|
||||
|
||||
void RegtestDeactivateSapling();
|
||||
|
|
Loading…
Reference in New Issue