Skip to content

Commit 588baf0

Browse files
authored
Run benchcomp unit and regression tests in CI (#2382)
This will ensure that benchcomp will continue to correctly parse future changes to Kani's output.
1 parent 270bac3 commit 588baf0

File tree

3 files changed

+27
-1
lines changed

3 files changed

+27
-1
lines changed

.github/workflows/kani.yml

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,29 @@ jobs:
5252
KANI_ENABLE_WRITE_JSON_SYMTAB: 1
5353
run: ./scripts/kani-regression.sh
5454

55+
benchcomp-tests:
56+
runs-on: ubuntu-20.04
57+
steps:
58+
- name: Checkout Kani
59+
uses: actions/checkout@v3
60+
61+
- name: Install benchcomp dependencies
62+
run: |
63+
sudo apt-get update
64+
sudo apt-get install -y python3-pip
65+
pushd tools/benchcomp && pip3 install -r requirements.txt
66+
67+
- name: Setup Kani Dependencies
68+
uses: ./.github/actions/setup
69+
with:
70+
os: ubuntu-20.04
71+
72+
- name: Build Kani using release mode
73+
run: cargo build-dev -- --release
74+
75+
- name: Run benchcomp unit and regression tests
76+
run: pushd tools/benchcomp && PATH=$(realpath ../../scripts):$PATH test/run
77+
5578
perf:
5679
runs-on: ubuntu-20.04
5780
steps:

scripts/ci/copyright-exclude

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@
55
.png
66
.props
77
.public.key
8-
Cargo.lock
98
CHANGELOG
9+
Cargo.lock
1010
LICENSE-APACHE
1111
LICENSE-MIT
1212
editorconfig
@@ -16,6 +16,7 @@ gitignore
1616
gitmodules
1717
ignore
1818
kani-dependencies
19+
requirements.txt
1920
scripts/ci/copyright-exclude
2021
tests/remote-target-lists/.*
2122
tools/build-kani/license-notes.txt

tools/benchcomp/requirements.txt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
cerberus
2+
pyyaml

0 commit comments

Comments
 (0)