|
|
|
@ -61,8 +61,10 @@ func TestCreation(t *testing.T) { |
|
|
|
|
{9199999, ID{Hash: checksumToBytes(0x879d6e30), Next: 9200000}}, // Last Istanbul and first Muir Glacier block
|
|
|
|
|
{9200000, ID{Hash: checksumToBytes(0xe029e991), Next: 12244000}}, // First Muir Glacier block
|
|
|
|
|
{12243999, ID{Hash: checksumToBytes(0xe029e991), Next: 12244000}}, // Last Muir Glacier block
|
|
|
|
|
{12244000, ID{Hash: checksumToBytes(0x0eb440f6), Next: 0}}, // First Berlin block
|
|
|
|
|
{20000000, ID{Hash: checksumToBytes(0x0eb440f6), Next: 0}}, // Future Berlin block
|
|
|
|
|
{12244000, ID{Hash: checksumToBytes(0x0eb440f6), Next: 12965000}}, // First Berlin block
|
|
|
|
|
{12964999, ID{Hash: checksumToBytes(0x0eb440f6), Next: 12965000}}, // Last Berlin block
|
|
|
|
|
{12965000, ID{Hash: checksumToBytes(0xb715077d), Next: 0}}, // First London block
|
|
|
|
|
{20000000, ID{Hash: checksumToBytes(0xb715077d), Next: 0}}, // Future London block
|
|
|
|
|
}, |
|
|
|
|
}, |
|
|
|
|
// Ropsten test cases
|
|
|
|
@ -203,11 +205,11 @@ func TestValidation(t *testing.T) { |
|
|
|
|
// Local is mainnet Petersburg, remote is Rinkeby Petersburg.
|
|
|
|
|
{7987396, ID{Hash: checksumToBytes(0xafec6b27), Next: 0}, ErrLocalIncompatibleOrStale}, |
|
|
|
|
|
|
|
|
|
// Local is mainnet Berlin, far in the future. Remote announces Gopherium (non existing fork)
|
|
|
|
|
// Local is mainnet London, far in the future. Remote announces Gopherium (non existing fork)
|
|
|
|
|
// at some future block 88888888, for itself, but past block for local. Local is incompatible.
|
|
|
|
|
//
|
|
|
|
|
// This case detects non-upgraded nodes with majority hash power (typical Ropsten mess).
|
|
|
|
|
{88888888, ID{Hash: checksumToBytes(0x0eb440f6), Next: 88888888}, ErrLocalIncompatibleOrStale}, |
|
|
|
|
{88888888, ID{Hash: checksumToBytes(0xb715077d), Next: 88888888}, ErrLocalIncompatibleOrStale}, |
|
|
|
|
|
|
|
|
|
// Local is mainnet Byzantium. Remote is also in Byzantium, but announces Gopherium (non existing
|
|
|
|
|
// fork) at block 7279999, before Petersburg. Local is incompatible.
|
|
|
|
|