ci: Add Foundry tooling integration test (#511)

## Description

Adds a CI workflow that builds and tests a small Foundry project with
`foundry-polkadot`'s `forge`, exercising the standard JSON interface
between `resolc` and `foundry-polkadot` end-to-end.

## Resolved Issues

Closes #513
This commit is contained in:
LJ authored and GitHub committed 2026-06-24 10:38:07 +02:00
1 parent fb0e9e6a30
commit 3d70def08c
10 files changed
+239 -12

No files matched your search

+23 -12
View File
@@ -64,6 +64,7 @@ jobs:
outputs:
should-run-differential-tests: ${{ steps.filter.outputs.should-run-differential-tests }}
should-run-hardhat-tests: ${{ steps.filter.outputs.should-run-hardhat-tests }}
should-run-foundry-tests: ${{ steps.filter.outputs.should-run-foundry-tests }}
steps:
- name: Checkout
uses: actions/checkout@v6
@@ -95,23 +96,28 @@ jobs:
print_changed_files
common_ignored=(
'\.md$'
'^book/'
'^docs/'
'^js/'
'^package\.json$'
'^package-lock\.json$'
)
echo "should-run-differential-tests=$(has_changes_other_than \
'\.md$' \
'^book/' \
'^docs/' \
'^js/' \
'^package\.json$' \
'^package-lock\.json$' \
"${common_ignored[@]}" \
'^tooling-projects/' \
)" | tee -a "$GITHUB_OUTPUT"
echo "should-run-hardhat-tests=$(has_changes_other_than \
'\.md$' \
'^book/' \
'^docs/' \
'^js/' \
'^package\.json$' \
'^package-lock\.json$' \
"${common_ignored[@]}" \
'^tooling-projects/foundry' \
)" | tee -a "$GITHUB_OUTPUT"
echo "should-run-foundry-tests=$(has_changes_other_than \
"${common_ignored[@]}" \
'^tooling-projects/hardhat' \
)" | tee -a "$GITHUB_OUTPUT"
run-differential-tests:
@@ -123,3 +129,8 @@ jobs:
needs: [test, check-changes]
if: ${{ needs.check-changes.outputs.should-run-hardhat-tests == 'true' }}
uses: ./.github/workflows/hardhat.yml
run-foundry-tests:
needs: [test, check-changes]
if: ${{ needs.check-changes.outputs.should-run-foundry-tests == 'true' }}
uses: ./.github/workflows/foundry.yml