@@ -43,6 +43,7 @@ BOOST_AUTO_TEST_CASE(get_next_work)
43
43
44
44
CBlockHeader blockHeader;
45
45
blockHeader.nTime = 1408732505 ; // Block #123457
46
+ blockHeader.cached_hash .SetNull ();
46
47
BOOST_CHECK_EQUAL (GetNextWorkRequired (blockIndexLast, &blockHeader, chainParams->GetConsensus ()), 0x1b1441deU ); // Block #123457 has 0x1b1441de
47
48
48
49
// test special rules for slow blocks on devnet/testnet
@@ -52,17 +53,22 @@ BOOST_AUTO_TEST_CASE(get_next_work)
52
53
53
54
// make sure normal rules apply
54
55
blockHeader.nTime = 1408732505 ; // Block #123457
56
+ blockHeader.cached_hash .SetNull ();
55
57
BOOST_CHECK_EQUAL (GetNextWorkRequired (blockIndexLast, &blockHeader, chainParamsDev->GetConsensus ()), 0x1b1441deU ); // Block #123457 has 0x1b1441de
56
58
57
59
// 10x higher target
58
60
blockHeader.nTime = 1408733090 ; // Block #123457 (10m+1sec)
61
+ blockHeader.cached_hash .SetNull ();
59
62
BOOST_CHECK_EQUAL (GetNextWorkRequired (blockIndexLast, &blockHeader, chainParamsDev->GetConsensus ()), 0x1c00c8f8U ); // Block #123457 has 0x1c00c8f8
60
63
blockHeader.nTime = 1408733689 ; // Block #123457 (20m)
64
+ blockHeader.cached_hash .SetNull ();
61
65
BOOST_CHECK_EQUAL (GetNextWorkRequired (blockIndexLast, &blockHeader, chainParamsDev->GetConsensus ()), 0x1c00c8f8U ); // Block #123457 has 0x1c00c8f8
62
66
// lowest diff possible
63
67
blockHeader.nTime = 1408739690 ; // Block #123457 (2h+1sec)
68
+ blockHeader.cached_hash .SetNull ();
64
69
BOOST_CHECK_EQUAL (GetNextWorkRequired (blockIndexLast, &blockHeader, chainParamsDev->GetConsensus ()), 0x207fffffU ); // Block #123457 has 0x207fffff
65
70
blockHeader.nTime = 1408743289 ; // Block #123457 (3h)
71
+ blockHeader.cached_hash .SetNull ();
66
72
BOOST_CHECK_EQUAL (GetNextWorkRequired (blockIndexLast, &blockHeader, chainParamsDev->GetConsensus ()), 0x207fffffU ); // Block #123457 has 0x207fffff
67
73
}
68
74
0 commit comments