Skip to content

Commit 7d8c090

Browse files
committed
apollo_l1_provider: add anvil to flow test
1 parent adaba63 commit 7d8c090

File tree

1 file changed

+25
-16
lines changed

1 file changed

+25
-16
lines changed

crates/apollo_l1_provider/tests/flow_tests.rs

Lines changed: 25 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,12 @@ use apollo_l1_provider::l1_provider::L1ProviderBuilder;
88
use apollo_l1_provider::l1_scraper::L1Scraper;
99
use apollo_l1_provider::metrics::L1_PROVIDER_INFRA_METRICS;
1010
use apollo_l1_provider::L1ProviderConfig;
11-
use apollo_l1_provider_types::{L1ProviderRequest, L1ProviderResponse, MockL1ProviderClient};
11+
use apollo_l1_provider_types::{L1ProviderRequest, L1ProviderResponse};
1212
use apollo_l1_scraper_config::config::L1ScraperConfig;
1313
use apollo_state_sync_types::communication::MockStateSyncClient;
14-
use papyrus_base_layer::{L1BlockReference, MockBaseLayerContract};
14+
use papyrus_base_layer::anvil_base_layer::AnvilBaseLayer;
15+
use papyrus_base_layer::test_utils::anvil_mine_blocks;
16+
use papyrus_base_layer::{BaseLayerContract, L1BlockReference};
1517
use starknet_api::block::{BlockHashAndNumber, BlockNumber};
1618
use tokio::sync::mpsc::channel;
1719

@@ -22,21 +24,16 @@ async fn flow_tests() {
2224
let historical_block = BlockHashAndNumber::default();
2325

2426
// Setup the base layer.
25-
let mut base_layer = MockBaseLayerContract::default(); // TODO(guyn): replace this with Anvil.
26-
base_layer.expect_latest_l1_block().returning(move |_| Ok(Some(start_block)));
27-
base_layer.expect_latest_proved_block().returning(move |_| Ok(Some(historical_block)));
28-
29-
// L1 provider setup.
30-
let mut l1_provider = L1ProviderBuilder::new(
31-
L1ProviderConfig::default(),
32-
Arc::new(MockL1ProviderClient::default()), // This isn't right
33-
Arc::new(MockBatcherClient::default()), // Consider saving a copy of this to interact
34-
Arc::new(MockStateSyncClient::default()), /* We'll need a copy of this if we do
35-
* bootstrapping */
27+
// let mut base_layer = MockBaseLayerContract::default(); // TODO(guyn): replace this with
28+
// Anvil. base_layer.expect_latest_l1_block().returning(move |_| Ok(Some(start_block)));
29+
// base_layer.expect_latest_proved_block().returning(move |_| Ok(Some(historical_block)));
30+
let base_layer = AnvilBaseLayer::new().await;
31+
anvil_mine_blocks(
32+
base_layer.ethereum_base_layer.config.clone(),
33+
100,
34+
&base_layer.get_url().await.expect("Failed to get anvil url."),
3635
)
37-
.startup_height(BlockNumber(start_block.number))
38-
.catchup_height(historical_block.number)
39-
.build();
36+
.await;
4037

4138
// This channel connects the L1Provider client to the server.
4239
let (tx, rx) = channel::<RequestWrapper<L1ProviderRequest, L1ProviderResponse>>(32);
@@ -45,6 +42,18 @@ async fn flow_tests() {
4542
let l1_provider_client =
4643
LocalComponentClient::new(tx, L1_PROVIDER_INFRA_METRICS.get_local_client_metrics());
4744

45+
// L1 provider setup.
46+
let mut l1_provider = L1ProviderBuilder::new(
47+
L1ProviderConfig::default(),
48+
Arc::new(l1_provider_client.clone()),
49+
Arc::new(MockBatcherClient::default()), // Consider saving a copy of this to interact
50+
Arc::new(MockStateSyncClient::default()), /* We'll need a copy of this if we do
51+
* bootstrapping */
52+
)
53+
.startup_height(BlockNumber(start_block.number))
54+
.catchup_height(historical_block.number)
55+
.build();
56+
4857
// Create the server.
4958
l1_provider.initialize(vec![]).await.unwrap();
5059
let _l1_provider_server = LocalComponentServer::new(

0 commit comments

Comments
 (0)