Skip to content

Commit f1f0412

Browse files
committed
WIP: generate evm tests
1 parent 21959d9 commit f1f0412

File tree

1 file changed

+61
-0
lines changed

1 file changed

+61
-0
lines changed

scripts/generate-regression-tests.sh

Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
#!/usr/bin/env bash
2+
3+
4+
set -exuo pipefail
5+
6+
kollect() {
7+
local name="$1"
8+
shift
9+
echo '#!/bin/sh' > "$name.sh"
10+
# TODO Mircea: change debug to save-temps after the evm-semantics repo is updated to use the latest backend
11+
"$@" --save-temps --dry-run | xargs $KORE/scripts/kollect.sh "$name" >> "$name.sh"
12+
chmod +x "$name.sh"
13+
}
14+
15+
generate-evm() {
16+
# git clone [email protected]:kframework/evm-semantics.git
17+
# cd evm-semantics
18+
# local evm_commit=$(git rev-parse --short HEAD)
19+
# git submodule update --init --recursive
20+
# make plugin-deps
21+
# make build-haskell
22+
# export PATH=$(pwd)/.build/usr/bin:$PATH
23+
#
24+
# kollect test-pop1 env MODE=VMTESTS SCHEDULE=DEFAULT \
25+
# kevm run --backend haskell \
26+
# tests/ethereum-tests/VMTests/vmIOandFlowOperations/pop1.json
27+
#
28+
# kollect test-add0 env MODE=VMTESTS SCHEDULE=DEFAULT \
29+
# kevm run --backend haskell \
30+
# tests/ethereum-tests/VMTests/vmArithmeticTest/add0.json \
31+
#
32+
# kollect test-sumTo10 env MODE=VMTESTS SCHEDULE=DEFAULT \
33+
# kevm run --backend haskell \
34+
# tests/interactive/sumTo10.evm \
35+
#
36+
# for search in \
37+
# branching-no-invalid straight-line-no-invalid \
38+
# branching-invalid straight-line
39+
# do
40+
# kollect "test-$search" \
41+
# kevm search --backend haskell \
42+
# "tests/interactive/search/$search.evm" \
43+
# "<statusCode> EVMC_INVALID_INSTRUCTION </statusCode>"
44+
# done
45+
#
46+
# kollect test-sum-to-n \
47+
# kevm prove --backend haskell \
48+
# tests/specs/examples/sum-to-n-spec.k \
49+
# VERIFICATION --format-failures
50+
51+
cd evm-semantics
52+
testdir=$KORE/tests/regression-evm-*
53+
tests=test-*
54+
rm -r $testdir
55+
mkdir $KORE/tests/regression-evm-$evm_commit
56+
mv $tests $KORE/tests/regression-evm-$evm_commit
57+
58+
}
59+
60+
cd $KORE
61+
generate-evm

0 commit comments

Comments
 (0)