Skip to content

Commit d95686c

Browse files
feat(blockifier_test_utils): download compilers (async), then recompile all (async)
1 parent 3900713 commit d95686c

1 file changed

Lines changed: 19 additions & 8 deletions

File tree

crates/blockifier_test_utils/tests/feature_contracts_compatibility_test.rs

Lines changed: 19 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -82,13 +82,24 @@ async fn verify_feature_contracts_compatibility(fix: bool, cairo_version: CairoV
8282
}
8383
}
8484
CairoVersion::Cairo1(RunnableCairo1::Casm) => {
85-
for (version, feature_contracts) in
85+
// Prepare cairo packages.
86+
let mut download_task_set = tokio::task::JoinSet::new();
87+
for (version, _feature_contracts) in
88+
FeatureContract::cairo1_feature_contracts_by_version()
89+
{
90+
download_task_set.spawn(async move { verify_cairo1_package(&version).await });
91+
}
92+
info!(
93+
"Verifying Cairo1 packages for versions {:?}.",
94+
FeatureContract::cairo1_feature_contracts_by_version().keys()
95+
);
96+
download_task_set.join_all().await;
97+
info!("Cairo1 packages verified.");
98+
// Verify feature contracts.
99+
let mut task_set = tokio::task::JoinSet::new();
100+
for (_version, feature_contracts) in
86101
FeatureContract::cairo1_feature_contracts_by_version()
87102
{
88-
verify_cairo1_package(&version).await;
89-
90-
let mut task_set = tokio::task::JoinSet::new();
91-
92103
for contract in feature_contracts
93104
.into_iter()
94105
.filter(|contract| contract.cairo_version() == cairo_version)
@@ -97,10 +108,10 @@ async fn verify_feature_contracts_compatibility(fix: bool, cairo_version: CairoV
97108
task_set
98109
.spawn(verify_feature_contracts_compatibility_logic_async(contract, fix));
99110
}
100-
info!("Done spawning tasks for {version:?}. Awaiting them...");
101-
task_set.join_all().await;
102-
info!("Done awaiting tasks for {version:?}.");
103111
}
112+
info!("Done spawning tasks for contract compilation. Awaiting them...");
113+
task_set.join_all().await;
114+
info!("Done awaiting tasks for contract compilation.");
104115
}
105116
#[cfg(feature = "cairo_native")]
106117
CairoVersion::Cairo1(RunnableCairo1::Native) => {

0 commit comments

Comments
 (0)