diff --git a/foundry.toml b/foundry.toml index 26443c0..775d61c 100644 --- a/foundry.toml +++ b/foundry.toml @@ -1,3 +1,5 @@ [profile.ci.fuzz] runs = 10_000 -solc_version = "0.8.23" \ No newline at end of file +solc_version = "0.8.23" +[profile.suave] +whitelist = ["*"] diff --git a/src/Test.sol b/src/Test.sol index 7b20508..6250de8 100644 --- a/src/Test.sol +++ b/src/Test.sol @@ -20,11 +20,13 @@ contract SuaveEnabled is Test { inputs[2] = "status"; try vm.ffi(inputs) returns (bytes memory response) { + /* // the status call of the `suave-geth forge` command fails with the 'not-ok' prefix // which is '6e6f742d6f6b' in hex if (isPrefix(hex"6e6f742d6f6b", response)) { revert("Local Suave node not detected running"); } + */ } catch (bytes memory reason) { revert(detectErrorMessage(reason)); } diff --git a/src/forge/Connector.sol b/src/forge/Connector.sol index 45f0c99..6496dcd 100644 --- a/src/forge/Connector.sol +++ b/src/forge/Connector.sol @@ -5,14 +5,20 @@ import "forge-std/Test.sol"; contract Connector is Test { function forgeIt(bytes memory addr, bytes memory data) internal returns (bytes memory) { + string memory root = vm.projectRoot(); + string memory foundryToml = string.concat(root, "/", "foundry.toml"); + string memory addrHex = iToHex(addr); string memory dataHex = iToHex(data); - string[] memory inputs = new string[](4); + string[] memory inputs = new string[](7); inputs[0] = "suave-geth"; inputs[1] = "forge"; - inputs[2] = addrHex; - inputs[3] = dataHex; + inputs[2] = "--local"; + inputs[3] = "--config"; + inputs[4] = foundryToml; + inputs[5] = addrHex; + inputs[6] = dataHex; bytes memory res = vm.ffi(inputs); return res;