Fix tests & clear node directories before startup

This commit is contained in:
Omar Abdulla
2025-08-01 13:09:47 +03:00
parent c2c3e81125
commit 57ba765aa2
17 changed files with 146 additions and 59 deletions
+1 -1
View File
@@ -40,7 +40,7 @@ pub trait SolidityCompiler {
fn get_compiler_executable(
config: &Arguments,
version: impl Into<VersionOrRequirement>,
) -> anyhow::Result<PathBuf>;
) -> impl Future<Output = anyhow::Result<PathBuf>>;
fn version(&self) -> anyhow::Result<Version>;
}
+6 -4
View File
@@ -197,7 +197,7 @@ impl SolidityCompiler for Resolc {
Resolc { resolc_path }
}
fn get_compiler_executable(
async fn get_compiler_executable(
config: &Arguments,
_version: impl Into<VersionOrRequirement>,
) -> anyhow::Result<PathBuf> {
@@ -235,11 +235,13 @@ impl SolidityCompiler for Resolc {
mod test {
use super::*;
#[test]
fn compiler_version_can_be_obtained() {
#[tokio::test]
async fn compiler_version_can_be_obtained() {
// Arrange
let args = Arguments::default();
let path = Resolc::get_compiler_executable(&args, Version::new(0, 7, 6)).unwrap();
let path = Resolc::get_compiler_executable(&args, Version::new(0, 7, 6))
.await
.unwrap();
let compiler = Resolc::new(path);
// Act
+9 -5
View File
@@ -179,11 +179,11 @@ impl SolidityCompiler for Solc {
Self { solc_path }
}
fn get_compiler_executable(
async fn get_compiler_executable(
config: &Arguments,
version: impl Into<VersionOrRequirement>,
) -> anyhow::Result<PathBuf> {
let path = download_solc(config.directory(), version, config.wasm)?;
let path = download_solc(config.directory(), version, config.wasm).await?;
Ok(path)
}
@@ -218,11 +218,15 @@ impl SolidityCompiler for Solc {
mod test {
use super::*;
#[test]
fn compiler_version_can_be_obtained() {
#[tokio::test]
async fn compiler_version_can_be_obtained() {
// Arrange
let args = Arguments::default();
let path = Solc::get_compiler_executable(&args, Version::new(0, 7, 6)).unwrap();
println!("Getting compiler path");
let path = Solc::get_compiler_executable(&args, Version::new(0, 7, 6))
.await
.unwrap();
println!("Got compiler path");
let compiler = Solc::new(path);
// Act
+7 -2
View File
@@ -8,7 +8,10 @@ use semver::Version;
async fn contracts_can_be_compiled_with_solc() {
// Arrange
let args = Arguments::default();
let compiler_path = Solc::get_compiler_executable(&args, Version::new(0, 8, 30)).unwrap();
let compiler_path = Solc::get_compiler_executable(&args, Version::new(0, 8, 30))
.await
.unwrap();
println!("About to assert");
// Act
let output = Compiler::<Solc>::new()
@@ -47,7 +50,9 @@ async fn contracts_can_be_compiled_with_solc() {
async fn contracts_can_be_compiled_with_resolc() {
// Arrange
let args = Arguments::default();
let compiler_path = Resolc::get_compiler_executable(&args, Version::new(0, 8, 30)).unwrap();
let compiler_path = Resolc::get_compiler_executable(&args, Version::new(0, 8, 30))
.await
.unwrap();
// Act
let output = Compiler::<Resolc>::new()