|
|
@ -506,8 +506,11 @@ TEST(checktransaction_tests, bad_txns_invalid_joinsplit_signature) { |
|
|
|
CTransaction tx(mtx); |
|
|
|
|
|
|
|
MockCValidationState state; |
|
|
|
// during initial block download, DoS ban score should be zero, else 100
|
|
|
|
EXPECT_CALL(state, DoS(0, false, REJECT_INVALID, "bad-txns-invalid-joinsplit-signature", false)).Times(1); |
|
|
|
ContextualCheckTransaction(tx, state, 0, 100); |
|
|
|
ContextualCheckTransaction(tx, state, 0, 100, []() { return true; }); |
|
|
|
EXPECT_CALL(state, DoS(100, false, REJECT_INVALID, "bad-txns-invalid-joinsplit-signature", false)).Times(1); |
|
|
|
ContextualCheckTransaction(tx, state, 0, 100, []() { return false; }); |
|
|
|
} |
|
|
|
|
|
|
|
TEST(checktransaction_tests, non_canonical_ed25519_signature) { |
|
|
@ -539,8 +542,11 @@ TEST(checktransaction_tests, non_canonical_ed25519_signature) { |
|
|
|
CTransaction tx(mtx); |
|
|
|
|
|
|
|
MockCValidationState state; |
|
|
|
// during initial block download, DoS ban score should be zero, else 100
|
|
|
|
EXPECT_CALL(state, DoS(0, false, REJECT_INVALID, "bad-txns-invalid-joinsplit-signature", false)).Times(1); |
|
|
|
ContextualCheckTransaction(tx, state, 0, 100); |
|
|
|
ContextualCheckTransaction(tx, state, 0, 100, []() { return true; }); |
|
|
|
EXPECT_CALL(state, DoS(100, false, REJECT_INVALID, "bad-txns-invalid-joinsplit-signature", false)).Times(1); |
|
|
|
ContextualCheckTransaction(tx, state, 0, 100, []() { return false; }); |
|
|
|
} |
|
|
|
|
|
|
|
TEST(checktransaction_tests, OverwinterConstructors) { |
|
|
@ -829,8 +835,11 @@ TEST(checktransaction_tests, OverwinterNotActive) { |
|
|
|
|
|
|
|
CTransaction tx(mtx); |
|
|
|
MockCValidationState state; |
|
|
|
// during initial block download, DoS ban score should be zero, else 100
|
|
|
|
EXPECT_CALL(state, DoS(0, false, REJECT_INVALID, "tx-overwinter-not-active", false)).Times(1); |
|
|
|
ContextualCheckTransaction(tx, state, 1, 100); |
|
|
|
ContextualCheckTransaction(tx, state, 1, 100, []() { return true; }); |
|
|
|
EXPECT_CALL(state, DoS(100, false, REJECT_INVALID, "tx-overwinter-not-active", false)).Times(1); |
|
|
|
ContextualCheckTransaction(tx, state, 1, 100, []() { return false; }); |
|
|
|
} |
|
|
|
|
|
|
|
// This tests a transaction without the fOverwintered flag set, against the Overwinter consensus rule set.
|
|
|
|