updates foundry tests on CI to leverage the new directory structure:
# unit tests
forge test --match-path "*test-sol/unit/*"
# e2e tests
forge test --match-path "*test-sol/e2e/*"
# integration tests
forge test --match-path "*test-sol/integration/*"
moves foundry scripts from migrations_sol to a new scripts/foundry/ directory. We already have a directory for scripts/truffle/ and scripts/bash/, so this makes it easier to find foundry-related bash scripts going forward.
Other changes
splits the migration, integration, and e2e tests on CI into distinct steps.
this saves time on CI since both the e2e and integration tests can use the same devchain. That means only a single step is required to generate the migrations and run a devchain. Previously, each step required generating migrations and running a devchain.
this helps make the workflow more readable, and ensures error logs can be more easily associated with a specific step on CI, rather than a single bash script.
edits to remappings (renames a few, and updates the order in foundry.toml for better readability)
adds repository and directory properties in package.json of @celo/devchain-anvil. This ensures npmjs.org displays hyperlinks to this Github repository.
adds a CONTRIBUTING.md file to migrations_sol. This can be used to add more information regarding the anvil devchain, and migrations going forward.
adds a "How we work" section in the README file of @celo/devchain-anvil. This is helpful for 3rd-party developers that find the package on npmjs.org. The links help developers take action and help improve the anvil devchain.
Tested
Yes, tested on CI and locally. All changes are added to CI workflows going forward.
Post merge and publishing workflow, I checked that the new URLs and new "How we work" section in the README file of @celo/devchain-anvil. Looks and works as expected:
Description
refactors foundry tests in
test-sol/
into 3 distinct directories:updates foundry tests on CI to leverage the new directory structure:
moves foundry scripts from
migrations_sol
to a newscripts/foundry/
directory. We already have a directory forscripts/truffle/
andscripts/bash/
, so this makes it easier to find foundry-related bash scripts going forward.Other changes
splits the migration, integration, and e2e tests on CI into distinct steps.
edits to remappings (renames a few, and updates the order in
foundry.toml
for better readability)adds
repository
anddirectory
properties inpackage.json
of@celo/devchain-anvil
. This ensures npmjs.org displays hyperlinks to this Github repository.adds a
CONTRIBUTING.md
file tomigrations_sol
. This can be used to add more information regarding the anvil devchain, and migrations going forward.adds a "How we work" section in the
README
file of@celo/devchain-anvil
. This is helpful for 3rd-party developers that find the package on npmjs.org. The links help developers take action and help improve the anvil devchain.Tested
Yes, tested on CI and locally. All changes are added to CI workflows going forward.
Related issues
Backwards compatibility
Yes, everything is backwards.
Documentation
No, we'll need to create better documentation for foundry-related workflows.