Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

💥 Amend stateful (a.k.a. invariant) Tests #184

Closed
pcaversaccio opened this issue Nov 21, 2023 · 0 comments · Fixed by #239 or #207
Closed

💥 Amend stateful (a.k.a. invariant) Tests #184

pcaversaccio opened this issue Nov 21, 2023 · 0 comments · Fixed by #239 or #207
Assignees
Labels
feature 💥 New feature or request help wanted 🆘 Extra attention is needed
Milestone

Comments

@pcaversaccio
Copy link
Owner

pcaversaccio commented Nov 21, 2023

We should amend the existing invariant (a.k.a. stateful) tests with further (missing) properties described in crytic/properties. See the discussion #183.

Also, we should also rename all invariant tests to stateful (done via #207). See:

@pcaversaccio pcaversaccio self-assigned this Nov 21, 2023
@pcaversaccio pcaversaccio added feature 💥 New feature or request help wanted 🆘 Extra attention is needed labels Nov 21, 2023
@pcaversaccio pcaversaccio added this to the 0.0.5 milestone Nov 21, 2023
@pcaversaccio pcaversaccio modified the milestones: 0.0.5, 0.1.0 Mar 7, 2024
@pcaversaccio pcaversaccio linked a pull request Apr 22, 2024 that will close this issue
pcaversaccio added a commit that referenced this issue Apr 25, 2024
### 🕓 Changelog

This PR adds the `echidna`-based
[property](https://github.com/crytic/properties) tests for the `ERC20`
and `ERC721` contracts (closes #184). The `ERC4626` properties are not
integrated as they are already covered by
[`erc4626-tests`](https://github.com/a16z/erc4626-tests). Please note
that [`hevm`](https://github.com/ethereum/hevm) doesn't strip whitespace
characters (!) and since Foundry doesn't easily allow for piping of
commands, I wrote a Python scripts
[`compile.py`](https://github.com/pcaversaccio/snekmate/blob/feat/echidna/lib/utils/compile.py)
that strips away all whitespace characters.

---------

Signed-off-by: Pascal Marco Caversaccio <pascal.caversaccio@hotmail.ch>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature 💥 New feature or request help wanted 🆘 Extra attention is needed
Projects
None yet
1 participant