Skip to content

Commit

Permalink
👷‍♂️ Temporary Workaround
Browse files Browse the repository at this point in the history
Signed-off-by: Pascal Marco Caversaccio <[email protected]>
  • Loading branch information
pcaversaccio committed Aug 15, 2024
1 parent ca00721 commit d49e046
Show file tree
Hide file tree
Showing 3 changed files with 41 additions and 26 deletions.
10 changes: 5 additions & 5 deletions .github/workflows/venom-halmos.yml
Original file line number Diff line number Diff line change
Expand Up @@ -69,24 +69,24 @@ jobs:
- name: Show the Foundry Halmos config
run: forge config
env:
FOUNDRY_PROFILE: halmos
FOUNDRY_PROFILE: venom-halmos

- name: Run Halmos ERC-20 symbolic tests
run: halmos --contract ERC20TestHalmos ${{ matrix.halmos }}
env:
FOUNDRY_PROFILE: halmos
FOUNDRY_PROFILE: venom-halmos

- name: Run Halmos ERC-721 symbolic tests
run: halmos --contract ERC721TestHalmos ${{ matrix.halmos }}
env:
FOUNDRY_PROFILE: halmos
FOUNDRY_PROFILE: venom-halmos

- name: Run Halmos ERC-1155 symbolic tests
run: halmos --contract ERC1155TestHalmos ${{ matrix.halmos }}
env:
FOUNDRY_PROFILE: halmos
FOUNDRY_PROFILE: venom-halmos

- name: Run Halmos math symbolic tests
run: halmos --contract MathTestHalmos ${{ matrix.halmos }}
env:
FOUNDRY_PROFILE: halmos
FOUNDRY_PROFILE: venom-halmos
31 changes: 10 additions & 21 deletions .github/workflows/venom-test-contracts.yml
Original file line number Diff line number Diff line change
Expand Up @@ -37,19 +37,8 @@ jobs:
- name: Activate `venom` backend
run: python scripts/insert_venom_pragma.py

- name: Setup Ape
uses: ApeWorX/github-action@v3
with:
python-version: ${{ matrix.python_version }}

- name: Check Ape compilation
run: ape compile

- name: Remove Ape Vyper and install latest Vyper
run: pip install --force-reinstall vyper

- name: Show the Vyper version
run: vyper --version
- name: Install Vyper
run: pip install vyper

- name: Install pnpm
uses: pnpm/action-setup@v3
Expand Down Expand Up @@ -85,22 +74,22 @@ jobs:
- name: Show the Foundry CI config
run: forge config
env:
FOUNDRY_PROFILE: ci
FOUNDRY_PROFILE: venom

- name: Foundry tests
run: forge test
env:
FOUNDRY_PROFILE: ci
FOUNDRY_PROFILE: venom

- name: Show the Foundry default config
run: forge config
env:
FOUNDRY_PROFILE: default
FOUNDRY_PROFILE: default-venom

- name: Run snapshot
run: NO_COLOR=1 forge snapshot >> $GITHUB_STEP_SUMMARY
env:
FOUNDRY_PROFILE: default
FOUNDRY_PROFILE: default-venom

- name: Install Homebrew
uses: Homebrew/actions/setup-homebrew@master
Expand All @@ -114,19 +103,19 @@ jobs:
- name: Show the Foundry Echidna config
run: forge config
env:
FOUNDRY_PROFILE: echidna
FOUNDRY_PROFILE: venom-echidna

- name: Compile the Echidna test contracts
run: forge build --build-info
env:
FOUNDRY_PROFILE: echidna
FOUNDRY_PROFILE: venom-echidna

- name: Run Echidna ERC-20 property tests
run: echidna test/tokens/echidna/ERC20Properties.sol --contract CryticERC20ExternalHarness ${{ matrix.echidna }}
env:
FOUNDRY_PROFILE: echidna
FOUNDRY_PROFILE: venom-echidna

- name: Run Echidna ERC-721 property tests
run: echidna test/tokens/echidna/ERC721Properties.sol --contract CryticERC721ExternalHarness ${{ matrix.echidna }}
env:
FOUNDRY_PROFILE: echidna
FOUNDRY_PROFILE: venom-echidna
26 changes: 26 additions & 0 deletions foundry.toml
Original file line number Diff line number Diff line change
Expand Up @@ -37,3 +37,29 @@ evm_version = "shanghai" # Set the EVM t
[profile.halmos]
force = true # Perform always a clean build.
evm_version = "shanghai" # Set the EVM target version to `shanghai`.

#### THE PROFILES BELOW ARE TEMPORARY - WILL DELETE BEFORE MERGING

# Default overrides for the Venom-based tests.
[profile.default-venom]
skip = ["src/snekmate/**/*.vy", "src/snekmate/**/*.vyi"] # Skip the compilation of all Vyper files (to be removed before merging).

# Default overrides for the Venom-based fuzz tests.
[profile.venom]
force = true # Perform always a clean build.
verbosity = 4 # Increase the verbosity level for the tests.
fuzz = { runs = 10_000, max_test_rejects = 350_000 } # Increase the number of fuzz runs and maximum number of combined inputs that may be rejected for the tests.
invariant = { runs = 375, depth = 500 } # Increase the number of runs (while preserving the default depth) for each invariant test group.
skip = ["src/snekmate/**/*.vy", "src/snekmate/**/*.vyi"] # Skip the compilation of all Vyper files (to be removed before merging).

# Default overrides for the Halmos tests.
[profile.venom-halmos]
force = true # Perform always a clean build.
evm_version = "shanghai" # Set the EVM target version to `shanghai`.
skip = ["src/snekmate/**/*.vy", "src/snekmate/**/*.vyi"] # Skip the compilation of all Vyper files (to be removed before merging).

# Default overrides for the Echidna tests.
[profile.venom-echidna]
force = true # Perform always a clean build.
evm_version = "shanghai" # Set the EVM target version to `shanghai`.
skip = ["src/snekmate/**/*.vy", "src/snekmate/**/*.vyi"] # Skip the compilation of all Vyper files (to be removed before merging).

0 comments on commit d49e046

Please sign in to comment.