Skip to content

msooseth/hevm-result-test-contracts

Repository files navigation

Test contracts for hevm

These help test how hevm pretty-prints messages to users

Example use:

git clone https://github.com/ethereum/hevm/
cd hevm
nix develop .
git clone https://github.com/msooseth/hevm-result-test-contracts
cd hevm-result-test-contracts
git submodule init
git submodule update
forge build --ast
cd ..
cabal run exe:hevm -- test --root "hevm-result-test-contracts"

You should be getting something like:

Running 1 test(s) for src/contract-allrevert.sol:MyContract
Exploring contract
Explored contract (8 branches)
Checking for reachability of 5 potential property violation(s)
[PASS] prove_add_value(address,uint256)

Running 1 test(s) for src/contract-bail.sol:MyContract
Exploring contract
Explored contract (8 branches)
Checking for reachability of 4 potential property violation(s)
[FAIL] prove_add_value(address,uint256)
Failure: prove_add_value(address,uint256)
  No reachable assertion violations, but all branches reverted
  Prefix this testname with `proveFail` if this is expected

List of interesting contracts to be added

As provided by Rappie

Balancer (0.7.x) + (0.5.12)

BendDAO (0.8.4)

Aurigami (0.8.11)

YOLOrekt (0.8.13)

Deri protocol (0.8.x)

Livepeer (0.8.9)

dHEDGE (0.7.6)

GYSR (0.8.4)

Duet Finance (>=0.4.0)

Zenlink (>= 0.8.0)

mStable (0.8.6)

Divergence (^0.8.0)

Synthetix (^0.5.16)

Yin Finance (^0.7.6)

ApeX Protocol (^0.8.0)

Solmate (>= 0.8.0) Library (geen bounty)

Sense Finance (0.8.13)

Aloe Protocol (^0.8.10)

Atlendis (^0.8.0)

Gnosis Protocol (^0.7.6)

Impossible Finance (=0.7.6)

Idle Finance (0.5.16)

Bancor3

Resonate

Dinosaur Eggs (0.6.12)

Set Protocol

Ante Finance (>=0.7.0)

datastructures:

About

Contracts to test FAIL/PASS/BAIL behaviours of hevm

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published