foundry-rs / foundry-rs/foundry

feat(`forge test` -> `chisel`): open chisel with current state on failed test

Open
#12,006 5 comments 0 reactions 0 assignees View on GitHub
C-chisel C-forge T-feature T-to-discuss
Dominant language
Rust
Stars
10.6k
Forks
2.6k
Avg merge
18h 20m
Merged PRs (30d)
510

Description

### Component

Forge

### Describe the feature you would like

One of the best features of Brownie was the ability to use the console:
https://eth-brownie.readthedocs.io/en/stable/interaction.html#using-the-console

The console allowed to perform various calls to contracts as well as to inspect the state of the chain.

The console is somewhat mirrored by Chisel, with the key distinction being that Chisel starts from a fresh deployment when run.

Therefore here's my feature request:
- Add a flag --test-interactive that toggles this functionality
- When a test fails, reproduce all calls until the failing one, then open chisel
- Have chisel treat storage and local variables as local

This will help debug broken tests more rapidly

### Additional context

_No response_

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.