-
To install with Foundry.
-
Fork this repository (easier) or create a new repository using it as template. Create from template
-
Clone your newly created repository recursively to include modules.
git clone --recursive https://github.com/myuser/yearn-base-strategy
cd yearn-base-strategy
NOTE: if you create from template you may need to run the following command to fetch the git submodules (.gitmodules for exact releases) git submodule init && git submodule update
- Build the project.
make build
To print the size of each contract
make size
- Run tests
make test
Run all tests run on a local chain
make test
Run all tests with traces (very useful)
make trace
Run all tests with gas outputs
make gas
Run specific test contract (e.g. test/StrategyOperation.t.sol
)
make test-contract contract=StrategyOperationsTest
Run specific test contract with traces (e.g. test/StrategyOperation.t.sol
)
make trace-contract contract=StrategyOperationsTest
Run specific test contract with gas report (e.g. test/StrategyOperation.t.sol
)
make test-contract-gas contract=StrategyOperationsTest
Run specific test (e.g. test/StrategyOperation.t.sol::testStrategy
)
make test-test test=testStrategy
Run specific test with traces (e.g. test/StrategyOperation.t.sol::testStrategy
)
make trace-test test=testStrategy
See here for some tips on testing Testing Tips
To print out the storage layout of any contract (e.g 'test/MockStrategy.sol')
make inspect contract=MockStrategy