Add Fulu boilerplate (#6695)

* Add Fulu boilerplate

* Add more boilerplate

* Change fulu_time to osaka_time

* Merge branch 'unstable' into fulu-boilerplate

* Fix tests

* Merge branch 'unstable' into fulu-boilerplate

* More test fixes

* Apply suggestions

* Remove `get_payload` boilerplate

* Add lightclient fulu types and fix beacon-chain-tests

* Disable Fulu in ef-tests

* Reduce boilerplate for future forks

* Small fixes

* One more fix

* Apply suggestions

* Merge branch 'unstable' into fulu-boilerplate

* Fix lints
This commit is contained in:
Mac L
2025-01-10 09:25:23 +04:00
committed by GitHub
parent 722573f7ed
commit ecdf2d891f
91 changed files with 2365 additions and 674 deletions

View File

@@ -75,7 +75,7 @@ pub async fn gossip_invalid() {
let response: Result<(), eth2::Error> = tester
.client
.post_beacon_blocks_v2(&PublishBlockRequest::new(block, blobs), validation_level)
.post_beacon_blocks_v2_ssz(&PublishBlockRequest::new(block, blobs), validation_level)
.await;
assert!(response.is_err());
@@ -124,7 +124,7 @@ pub async fn gossip_partial_pass() {
let response: Result<(), eth2::Error> = tester
.client
.post_beacon_blocks_v2(&PublishBlockRequest::new(block, blobs), validation_level)
.post_beacon_blocks_v2_ssz(&PublishBlockRequest::new(block, blobs), validation_level)
.await;
assert!(response.is_err());
@@ -165,7 +165,7 @@ pub async fn gossip_full_pass() {
let response: Result<(), eth2::Error> = tester
.client
.post_beacon_blocks_v2(
.post_beacon_blocks_v2_ssz(
&PublishBlockRequest::new(block.clone(), blobs),
validation_level,
)
@@ -261,7 +261,7 @@ pub async fn consensus_invalid() {
let response: Result<(), eth2::Error> = tester
.client
.post_beacon_blocks_v2(&PublishBlockRequest::new(block, blobs), validation_level)
.post_beacon_blocks_v2_ssz(&PublishBlockRequest::new(block, blobs), validation_level)
.await;
assert!(response.is_err());
@@ -307,7 +307,7 @@ pub async fn consensus_gossip() {
let response: Result<(), eth2::Error> = tester
.client
.post_beacon_blocks_v2(&PublishBlockRequest::new(block, blobs), validation_level)
.post_beacon_blocks_v2_ssz(&PublishBlockRequest::new(block, blobs), validation_level)
.await;
assert!(response.is_err());
@@ -423,7 +423,7 @@ pub async fn consensus_full_pass() {
let response: Result<(), eth2::Error> = tester
.client
.post_beacon_blocks_v2(
.post_beacon_blocks_v2_ssz(
&PublishBlockRequest::new(block.clone(), blobs),
validation_level,
)
@@ -475,7 +475,7 @@ pub async fn equivocation_invalid() {
let response: Result<(), eth2::Error> = tester
.client
.post_beacon_blocks_v2(&PublishBlockRequest::new(block, blobs), validation_level)
.post_beacon_blocks_v2_ssz(&PublishBlockRequest::new(block, blobs), validation_level)
.await;
assert!(response.is_err());
@@ -533,7 +533,7 @@ pub async fn equivocation_consensus_early_equivocation() {
/* submit `block_a` as valid */
assert!(tester
.client
.post_beacon_blocks_v2(
.post_beacon_blocks_v2_ssz(
&PublishBlockRequest::new(block_a.clone(), blobs_a),
validation_level
)
@@ -547,7 +547,7 @@ pub async fn equivocation_consensus_early_equivocation() {
/* submit `block_b` which should induce equivocation */
let response: Result<(), eth2::Error> = tester
.client
.post_beacon_blocks_v2(
.post_beacon_blocks_v2_ssz(
&PublishBlockRequest::new(block_b.clone(), blobs_b),
validation_level,
)
@@ -596,7 +596,7 @@ pub async fn equivocation_gossip() {
let response: Result<(), eth2::Error> = tester
.client
.post_beacon_blocks_v2(&PublishBlockRequest::new(block, blobs), validation_level)
.post_beacon_blocks_v2_ssz(&PublishBlockRequest::new(block, blobs), validation_level)
.await;
assert!(response.is_err());
@@ -721,7 +721,7 @@ pub async fn equivocation_full_pass() {
let response: Result<(), eth2::Error> = tester
.client
.post_beacon_blocks_v2(
.post_beacon_blocks_v2_ssz(
&PublishBlockRequest::new(block.clone(), blobs),
validation_level,
)
@@ -1413,7 +1413,7 @@ pub async fn block_seen_on_gossip_without_blobs() {
// Post the block *and* blobs to the HTTP API.
let response: Result<(), eth2::Error> = tester
.client
.post_beacon_blocks_v2(
.post_beacon_blocks_v2_ssz(
&PublishBlockRequest::new(block.clone(), Some(blobs)),
validation_level,
)
@@ -1498,7 +1498,7 @@ pub async fn block_seen_on_gossip_with_some_blobs() {
// Post the block *and* all blobs to the HTTP API.
let response: Result<(), eth2::Error> = tester
.client
.post_beacon_blocks_v2(
.post_beacon_blocks_v2_ssz(
&PublishBlockRequest::new(block.clone(), Some(blobs)),
validation_level,
)
@@ -1571,7 +1571,7 @@ pub async fn blobs_seen_on_gossip_without_block() {
// Post the block *and* all blobs to the HTTP API.
let response: Result<(), eth2::Error> = tester
.client
.post_beacon_blocks_v2(
.post_beacon_blocks_v2_ssz(
&PublishBlockRequest::new(block.clone(), Some((kzg_proofs, blobs))),
validation_level,
)
@@ -1645,7 +1645,7 @@ pub async fn blobs_seen_on_gossip_without_block_and_no_http_blobs() {
// Post just the block to the HTTP API (blob lists are empty).
let response: Result<(), eth2::Error> = tester
.client
.post_beacon_blocks_v2(
.post_beacon_blocks_v2_ssz(
&PublishBlockRequest::new(
block.clone(),
Some((Default::default(), Default::default())),
@@ -1717,7 +1717,7 @@ pub async fn slashable_blobs_seen_on_gossip_cause_failure() {
// Post block A *and* all its blobs to the HTTP API.
let response: Result<(), eth2::Error> = tester
.client
.post_beacon_blocks_v2(
.post_beacon_blocks_v2_ssz(
&PublishBlockRequest::new(block_a.clone(), Some((kzg_proofs_a, blobs_a))),
validation_level,
)
@@ -1778,7 +1778,7 @@ pub async fn duplicate_block_status_code() {
let block_request = PublishBlockRequest::new(block.clone(), Some((kzg_proofs, blobs)));
let response: Result<(), eth2::Error> = tester
.client
.post_beacon_blocks_v2(&block_request, validation_level)
.post_beacon_blocks_v2_ssz(&block_request, validation_level)
.await;
// This should result in the block being fully imported.
@@ -1791,7 +1791,7 @@ pub async fn duplicate_block_status_code() {
// Post again.
let duplicate_response: Result<(), eth2::Error> = tester
.client
.post_beacon_blocks_v2(&block_request, validation_level)
.post_beacon_blocks_v2_ssz(&block_request, validation_level)
.await;
let err = duplicate_response.unwrap_err();
assert_eq!(err.status().unwrap(), duplicate_block_status_code);