fuzz-utils
fuzz-utils copied to clipboard
[Bug-Candidate]: If `deployContracts` is used, the generated test probably won't work
Describe the issue:
Echidna allows contracts to be deployed to specific addresses using the deployContracts configuration option. However, when the tests are generated, only the harness is constructed and the other contracts are not deployed.
Not sure if this is an easy fix, just leaving it here for reference.
Code example to reproduce the issue:
Not an exact reproducer, but a general idea.
In echidna config file:
deployContracts: [["0x12345", "ExampleContract"]]
In the echidna test contract:
constructor() {
ExampleContract ec = ExampleContract(0x12345);
uint256 value1 = ec.doSomething();
assert(value1 == 123);
}
Version:
0.2.0
Relevant log output:
No response
Are you saying that the constructor will revert during the external call? :thinking:
Not necessarily. I fixed the example. Anyway, as I said, it's just a general idea and not a proper reproducer. I'm working on private code.
We should be able to leverage deployCodeTo here https://book.getfoundry.sh/reference/forge-std/deployCodeTo#deploycodeto