diff --git a/.github/SOLIDITY_COMPAT_ISSUE.md b/.github/SOLIDITY_COMPAT_ISSUE.md index ce9f92e2d..e669af174 100644 --- a/.github/SOLIDITY_COMPAT_ISSUE.md +++ b/.github/SOLIDITY_COMPAT_ISSUE.md @@ -3,3 +3,6 @@ Compatibility with the [Arecibo](https://github.com/lurk-lab/arecibo) dependency Check the [Solidity compatibility workflow run](__WORKFLOW_URL__) for details. This issue was raised by the workflow at __WORKFLOW_FILE__. + +> [!NOTE] +> This is a test diff --git a/.github/workflows/solidity.yml b/.github/workflows/solidity.yml index 876fea16a..dce1e9330 100644 --- a/.github/workflows/solidity.yml +++ b/.github/workflows/solidity.yml @@ -41,7 +41,9 @@ jobs: - uses: taiki-e/install-action@nextest - uses: Swatinem/rust-cache@v2 - name: Run Solidity test generator - run: cargo nextest run -E 'test(test_solidity_compatibility)' --release --run-ignored all > test-output + run: | + cargo nextest run -E 'test(test_solidity_compatibility)' --release --run-ignored all > test-output + cat test-output working-directory: ${{ github.workspace }} - name: Check out `solidity-verifier` for tests uses: actions/checkout@v4 @@ -55,6 +57,7 @@ jobs: version: nightly - name: Prep Solidity test files run: | + cat test-output # Get test names from output TEST_NAMES=$(grep 'test provider::*' test-output | awk -F'[_(.*?)\b...]' '{ print $(NF-3) }') echo "$TEST_NAMES" @@ -88,12 +91,14 @@ jobs: buffer = "" } }' test-output + cat ipa.t.sol # Clean up shopt -s nullglob for file in *.t.sol; do - sed '/^running 1 test$/d;/^test provider.*$/d' $file > tmp.file && mv tmp.file solidity-verifier/test/$file + cat $file | sed '1,3d' | sed -n -e :a -e '1,4!{P;N;D;};N;ba' > tmp.file && mv tmp.file solidity-verifier/test/$file done + shopt -u nullglob working-directory: ${{ github.workspace }} - name: Run Forge tests id: solidity-test diff --git a/src/provider/tests/ipa_pc.rs b/src/provider/tests/ipa_pc.rs index 3c41dafb8..a1a1d7995 100644 --- a/src/provider/tests/ipa_pc.rs +++ b/src/provider/tests/ipa_pc.rs @@ -22,6 +22,7 @@ import \"src/blocks/grumpkin/Grumpkin.sol\"; import \"src/blocks/EqPolynomial.sol\"; import \"src/Utilities.sol\"; import \"src/blocks/IpaPcs.sol\"; +\"@std/Test.sol\";cs.sol\"; contract IpaTest is Test { function composeIpaInput() public pure returns (InnerProductArgument.IpaInputGrumpkin memory) { @@ -50,7 +51,6 @@ uint256 eval = {{ eval }}; return InnerProductArgument.IpaInputGrumpkin(ck_v, ck_s, point, L_vec, R_vec, commitment, eval, a_hat); } -function testIpaGrumpkinVerification_{{ num_vars }}_Variables() public { InnerProductArgument.IpaInputGrumpkin memory input = composeIpaInput(); assertTrue(InnerProductArgument.verifyGrumpkin(input, getTranscript())); }