-
Notifications
You must be signed in to change notification settings - Fork 2k
Plans to support more cheatcodes in chisel? #4811
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Comments
Supportive, |
For quick testing purposes I think most important ones are assertions related ones like, especially assertEq. |
Not sure what you are doing, but you can probably just use But the distinction here seems to be that the vm interface/cheats are available, but the stdCheats/etc from forge-std are not present. Maybe we just need a way to pull in forge-std into chisel (if that's not currently present)? cc @clabby |
This feature is useful to be able to debug tests faster inside chisel for example. |
Another annoying inconsistency I noticed is that vm.deal cheatcode in Chisel is only available for native ETH, but not for ERC20 tokens. I.e only the 2 arguments version of deal cheatcode is available. It would be nice if we can re-use same cheatcodes in Test and in Chisel. |
We can definitely pull in forge-std, but when I did that for the first iteration to get it working, it slowed down compilation time and made the repl feel a good bit less snappy. We'd also have to add forge-std as a submodule - will defer to @mattsse and you on whether or not this is worth it! As for the inconsistency of some of the cheatcodes (i.e. the lack of the version of |
@clabby I think this issue may have been resolved by work that has happened on the If so, we can mark this as resolved cc @DaniPopes |
All cheatcodes are available through Vm, what OP is referring to is |
Component
Chisel
Describe the feature you would like
Support all the cheatocdes in chisel
Additional context
Today only a few cheatcodes are supported in chisel, like prank and deal. But many are still missing : assertLt , envUnit, envAddress, assertEq , etc.
Furthermore it is not clear which ones are already supported and which are not.
The text was updated successfully, but these errors were encountered: