Update the compilers interface

This commit is contained in:
Omar Abdulla
2025-08-27 22:01:25 +03:00
parent 4b641b947b
commit af1eba0ccf
19 changed files with 502 additions and 912 deletions
+7 -6
View File
@@ -1,5 +1,6 @@
use std::path::PathBuf;
use revive_dt_common::types::VersionOrRequirement;
use revive_dt_compiler::{Compiler, SolidityCompiler, revive_resolc::Resolc, solc::Solc};
use revive_dt_config::Arguments;
use semver::Version;
@@ -8,17 +9,17 @@ 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))
let solc = Solc::new(&args, VersionOrRequirement::Version(Version::new(0, 8, 30)))
.await
.unwrap();
// Act
let output = Compiler::<Solc>::new()
let output = Compiler::new()
.with_source("./tests/assets/array_one_element/callable.sol")
.unwrap()
.with_source("./tests/assets/array_one_element/main.sol")
.unwrap()
.try_build(compiler_path)
.try_build(solc.as_ref())
.await;
// Assert
@@ -49,17 +50,17 @@ 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))
let resolc = Resolc::new(&args, VersionOrRequirement::Version(Version::new(0, 8, 30)))
.await
.unwrap();
// Act
let output = Compiler::<Resolc>::new()
let output = Compiler::new()
.with_source("./tests/assets/array_one_element/callable.sol")
.unwrap()
.with_source("./tests/assets/array_one_element/main.sol")
.unwrap()
.try_build(compiler_path)
.try_build(resolc.as_ref())
.await;
// Assert