-
Notifications
You must be signed in to change notification settings - Fork 0
92 lines (77 loc) · 2.47 KB
/
run-examples.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
name: Run Examples
on:
push:
branches:
- main
pull_request:
branches:
- main
workflow_dispatch:
jobs:
CompileAndTest:
runs-on: ubuntu-latest
container:
# Requires repo to have action access in package settings
image: ghcr.io/uq-pac/basil-dev:latest
credentials:
username: ${{ github.actor }}
password: ${{ secrets.github_token }}
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Compile BASIL
run: ./mill compile
- name: Bitvec Tests
run: ./mill test.testOnly BitVectorAnalysisTests
- name: IntrusiveListTest
run: ./mill test.testOnly '*IntrusiveListPublicInterfaceTest'
SystemTests:
runs-on: ubuntu-latest
# container:
# # Requires repo to have action access in package settings
# image: ghcr.io/uq-pac/basil-dev:latest
# credentials:
# username: ${{ github.actor }}
# password: ${{ secrets.github_token }}
steps:
- name: Checkout
uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: '17'
- uses: actions/setup-dotnet@v4
with:
dotnet-version: '6.0.x'
- run: sudo apt-get -y install z3
- run: dotnet tool install --global boogie
- run: make extract
working-directory: src/test
- name: System Tests
run: ./mill test.testOnly 'SystemTests*'
- uses: actions/upload-artifact@v4
if: always()
with:
name: testresult-${{ github.run_number }}
path: |
src/test/*.csv
src/test/*.svg
- if: always()
run: |
pushd src/test
tail -n+1 summary-*.csv
pasted="$(paste headers.md.part summary-*.md.part)"
for part in summary-*.md.part; do
# basename, then everything after "summary-", then everything before ".md.part" (via two rev passes)
testname="$(basename $part | cut -d- -f2- | rev | cut -d. -f3- | rev)"
[[ -n "$testname" ]]
svg="verifyTime-$testname.svg"
ls -l "$svg"
# 1920 hours = 80 days
#url="$(curl -F"file=@$svg" -Fexpires=1920 http://0x0.st)"
#[[ -n "$url" ]]
#pasted="$(echo "$pasted" | sed "s#HISTO${testname}HISTO#$url#g")"
done
popd
echo "$pasted" > $GITHUB_STEP_SUMMARY
shell: "bash -xe {0}"