@@ -76,10 +76,16 @@ func TestCreation(t *testing.T) {
7676 {20000000 , 1681338454 , ID {Hash : checksumToBytes (0xf0afd0e3 ), Next : 1681338455 }}, // Last Gray Glacier block
7777 {20000000 , 1681338455 , ID {Hash : checksumToBytes (0xdce96c2d ), Next : 1710338135 }}, // First Shanghai block
7878 {30000000 , 1710338134 , ID {Hash : checksumToBytes (0xdce96c2d ), Next : 1710338135 }}, // Last Shanghai block
79- {40000000 , 1710338135 , ID {Hash : checksumToBytes (0x9f3d2254 ), Next : 1746612311 }}, // First Cancun block
79+ {30000000 , 1710338135 , ID {Hash : checksumToBytes (0x9f3d2254 ), Next : 1746612311 }}, // First Cancun block
8080 {30000000 , 1746022486 , ID {Hash : checksumToBytes (0x9f3d2254 ), Next : 1746612311 }}, // Last Cancun block
81- {30000000 , 1746612311 , ID {Hash : checksumToBytes (0xc376cf8b ), Next : 0 }}, // First Prague block
82- {50000000 , 2000000000 , ID {Hash : checksumToBytes (0xc376cf8b ), Next : 0 }}, // Future Prague block
81+ {30000000 , 1746612311 , ID {Hash : checksumToBytes (0xc376cf8b ), Next : 1764798551 }}, // First Prague block
82+ {30000000 , 1764798550 , ID {Hash : checksumToBytes (0xc376cf8b ), Next : 1764798551 }}, // Last Prague block
83+ {30000000 , 1764798551 , ID {Hash : checksumToBytes (0x5167e2a6 ), Next : 1765290071 }}, // First Osaka block
84+ {30000000 , 1765290070 , ID {Hash : checksumToBytes (0x5167e2a6 ), Next : 1765290071 }}, // Last Osaka block
85+ {30000000 , 1765290071 , ID {Hash : checksumToBytes (0xcba2a1c0 ), Next : 1767747671 }}, // First BPO1 block
86+ {30000000 , 1767747670 , ID {Hash : checksumToBytes (0xcba2a1c0 ), Next : 1767747671 }}, // Last BPO1 block
87+ {30000000 , 1767747671 , ID {Hash : checksumToBytes (0x07c9462e ), Next : 0 }}, // First BPO2 block
88+ {50000000 , 2000000000 , ID {Hash : checksumToBytes (0x07c9462e ), Next : 0 }}, // Future BPO2 block
8389 },
8490 },
8591 // Sepolia test cases
@@ -162,6 +168,9 @@ func TestValidation(t *testing.T) {
162168 legacyConfig .ShanghaiTime = nil
163169 legacyConfig .CancunTime = nil
164170 legacyConfig .PragueTime = nil
171+ legacyConfig .OsakaTime = nil
172+ legacyConfig .BPO1Time = nil
173+ legacyConfig .BPO2Time = nil
165174
166175 tests := []struct {
167176 config * params.ChainConfig
@@ -361,11 +370,11 @@ func TestValidation(t *testing.T) {
361370 // Local is mainnet Shanghai, remote is random Shanghai.
362371 {params .MainnetChainConfig , 20000000 , 1681338455 , ID {Hash : checksumToBytes (0x12345678 ), Next : 0 }, ErrLocalIncompatibleOrStale },
363372
364- // Local is mainnet Prague , far in the future. Remote announces Gopherium (non existing fork)
373+ // Local is mainnet BPO2 , far in the future. Remote announces Gopherium (non existing fork)
365374 // at some future timestamp 8888888888, for itself, but past block for local. Local is incompatible.
366375 //
367376 // This case detects non-upgraded nodes with majority hash power (typical Ropsten mess).
368- {params .MainnetChainConfig , 88888888 , 8888888888 , ID {Hash : checksumToBytes (0xc376cf8b ), Next : 8888888888 }, ErrLocalIncompatibleOrStale },
377+ {params .MainnetChainConfig , 88888888 , 8888888888 , ID {Hash : checksumToBytes (0x07c9462e ), Next : 8888888888 }, ErrLocalIncompatibleOrStale },
369378
370379 // Local is mainnet Shanghai. Remote is also in Shanghai, but announces Gopherium (non existing
371380 // fork) at timestamp 1668000000, before Cancun. Local is incompatible.
0 commit comments