mirror of
https://github.com/hl-archive-node/nanoreth.git
synced 2025-12-06 10:59:55 +00:00
fix: replace mainnet TTD so geth mainnet genesis parsing works (#5290)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
This commit is contained in:
@ -2253,6 +2253,27 @@ Post-merge hard forks (timestamp based):
|
||||
assert_eq!(genesis.config.cancun_time, Some(4661));
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_parse_cancun_genesis_all_formats() {
|
||||
let s = r#"{"config":{"ethash":{},"chainId":1337,"homesteadBlock":0,"eip150Block":0,"eip155Block":0,"eip158Block":0,"byzantiumBlock":0,"constantinopleBlock":0,"petersburgBlock":0,"istanbulBlock":0,"berlinBlock":0,"londonBlock":0,"terminalTotalDifficulty":0,"terminalTotalDifficultyPassed":true,"shanghaiTime":0,"cancunTime":4661},"nonce":"0x0","timestamp":"0x0","extraData":"0x","gasLimit":"0x4c4b40","difficulty":"0x1","mixHash":"0x0000000000000000000000000000000000000000000000000000000000000000","coinbase":"0x0000000000000000000000000000000000000000","alloc":{"658bdf435d810c91414ec09147daa6db62406379":{"balance":"0x487a9a304539440000"},"aa00000000000000000000000000000000000000":{"code":"0x6042","storage":{"0x0000000000000000000000000000000000000000000000000000000000000000":"0x0000000000000000000000000000000000000000000000000000000000000000","0x0100000000000000000000000000000000000000000000000000000000000000":"0x0100000000000000000000000000000000000000000000000000000000000000","0x0200000000000000000000000000000000000000000000000000000000000000":"0x0200000000000000000000000000000000000000000000000000000000000000","0x0300000000000000000000000000000000000000000000000000000000000000":"0x0000000000000000000000000000000000000000000000000000000000000303"},"balance":"0x1","nonce":"0x1"},"bb00000000000000000000000000000000000000":{"code":"0x600154600354","storage":{"0x0000000000000000000000000000000000000000000000000000000000000000":"0x0000000000000000000000000000000000000000000000000000000000000000","0x0100000000000000000000000000000000000000000000000000000000000000":"0x0100000000000000000000000000000000000000000000000000000000000000","0x0200000000000000000000000000000000000000000000000000000000000000":"0x0200000000000000000000000000000000000000000000000000000000000000","0x0300000000000000000000000000000000000000000000000000000000000000":"0x0000000000000000000000000000000000000000000000000000000000000303"},"balance":"0x2","nonce":"0x1"}},"number":"0x0","gasUsed":"0x0","parentHash":"0x0000000000000000000000000000000000000000000000000000000000000000","baseFeePerGas":"0x3b9aca00"}"#;
|
||||
let genesis: AllGenesisFormats = serde_json::from_str(s).unwrap();
|
||||
|
||||
// this should be the genesis format
|
||||
let genesis = match genesis {
|
||||
AllGenesisFormats::Geth(genesis) => genesis,
|
||||
_ => panic!("expected geth genesis format"),
|
||||
};
|
||||
|
||||
// assert that the alloc was picked up
|
||||
let acc = genesis
|
||||
.alloc
|
||||
.get(&"0xaa00000000000000000000000000000000000000".parse::<Address>().unwrap())
|
||||
.unwrap();
|
||||
assert_eq!(acc.balance, U256::from(1));
|
||||
// assert that the cancun time was picked up
|
||||
assert_eq!(genesis.config.cancun_time, Some(4661));
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_default_cancun_header_forkhash() {
|
||||
// set the gas limit from the hive test genesis according to the hash
|
||||
|
||||
Reference in New Issue
Block a user