Skip to content

Commit e9fae5d

Browse files
committed
fix: use verified build for tests
Signed-off-by: Reinis Martinsons <[email protected]>
1 parent f1a15c0 commit e9fae5d

File tree

3 files changed

+28
-2
lines changed

3 files changed

+28
-2
lines changed

.github/workflows/pr.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -115,8 +115,8 @@ jobs:
115115
toolchain: stable
116116
profile: minimal
117117
components: rustc
118-
- name: Build Verified
119-
run: ~/.cargo/bin/solana-verify build --library-name svm_spoke
118+
- name: Test verified build
119+
run: yarn test-solana-verify
120120
- name: Cache Cargo dependencies
121121
uses: Swatinem/rust-cache@v2
122122
forge:

package.json

+2
Original file line numberDiff line numberDiff line change
@@ -30,11 +30,13 @@
3030
"generate-svm-clients": "yarn ts-node ./scripts/svm/utils/generate-svm-clients.ts && yarn ts-node ./scripts/svm/utils/rename-clients-imports.ts",
3131
"build-evm": "hardhat compile",
3232
"build-svm": "echo 'Generating IDLs...' && anchor build > /dev/null 2>&1 || true && anchor run generateExternalTypes && anchor build",
33+
"build-solana-verify": "bash ./scripts/svm/buildSolanaVerify.sh",
3334
"build-ts": "rm -rf ./dist && tsc && rsync -a --include '*/' --include '*.d.ts' --exclude '*' ./typechain ./dist/",
3435
"copy-idl": "mkdir -p dist/src/svm/assets/idl && cp src/svm/assets/idl/*.json dist/src/svm/assets/idl/",
3536
"build": "yarn build-evm && yarn build-svm && yarn generate-svm-assets && yarn build-ts && yarn copy-idl",
3637
"test-evm": "IS_TEST=true hardhat test",
3738
"test-svm": "anchor test -- --features test",
39+
"test-solana-verify": "IS_TEST=true yarn build-solana-verify && yarn generate-svm-assets && yarn copy-idl && anchor test --skip-build",
3840
"test": "yarn test-evm && yarn test-svm",
3941
"test:report-gas": "IS_TEST=true REPORT_GAS=true hardhat test",
4042
"generate-evm-assets": "rm -rf typechain && TYPECHAIN=ethers yarn hardhat typechain",

scripts/svm/buildSolanaVerify.sh

+24
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
#!/usr/bin/env bash
2+
set -euo pipefail
3+
4+
if [[ "${IS_TEST:-}" == "true" ]]; then
5+
CARGO_OPTIONS="--features test"
6+
else
7+
CARGO_OPTIONS=""
8+
fi
9+
10+
for program in programs/*; do
11+
[ -d "$program" ] || continue
12+
13+
dir_name=$(basename "$program")
14+
program_name=${dir_name//-/_}
15+
16+
echo "Running verified build for $program_name"
17+
solana-verify build --library-name "$program_name" -- $CARGO_OPTIONS
18+
19+
echo "Building IDL for $program_name"
20+
anchor idl build -p "$dir_name" -o "target/idl/$program_name.json" -t "target/types/$program_name.ts" -- $CARGO_OPTIONS
21+
done
22+
23+
echo "Generating external program types"
24+
anchor run generateExternalTypes

0 commit comments

Comments
 (0)