avoid hardcoded addresses in test cases, add pre-order iterator #632
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Run Examples | |
on: | |
push: | |
branches: | |
- main | |
pull_request: | |
branches: | |
- main | |
workflow_dispatch: | |
jobs: | |
Compile: | |
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 Mill | |
run: ./mill compile | |
StandardSystemTests: | |
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: System Tests | |
run: ./mill test.testOnly 'SystemTests*' | |
- uses: actions/upload-artifact@v4 | |
with: | |
name: testresult-${{ github.run_number }} | |
path: | | |
src/test/*.csv | |
src/test/*.svg | |
- 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}" | |
UnitTests: | |
runs-on: ubuntu-latest | |
container: | |
image: ghcr.io/uq-pac/basil-dev:latest | |
credentials: | |
username: ${{ github.actor }} | |
password: ${{ secrets.github_token }} | |
steps: | |
- uses: actions/checkout@v4 | |
- run: ./mill test.compile | |
# every test with package prefix: | |
# sbt "show test:definedTests" | |
# omitting because failing or incorrect: | |
# MemoryRegionTestsDSA MemoryRegionTestsNoRegion UnimplementedTests ExtraSpecTests IndirectCallTests PointsToTest | |
- run: ./mill test.testOnly IrreducibleLoop | |
if: ${{ ! cancelled() }} | |
- run: ./mill test.testOnly BitVectorAnalysisTests | |
if: ${{ ! cancelled() }} | |
- run: ./mill test.testOnly '*IntrusiveListPublicInterfaceTest' | |
if: ${{ ! cancelled() }} | |
- run: ./mill test.testOnly util.intrusive_list.IntrusiveListTest | |
if: ${{ ! cancelled() }} | |
- run: ./mill test.testOnly DataStructureAnalysisTest | |
if: ${{ ! cancelled() }} | |
- run: ./mill test.testOnly ParamAnalysisTests | |
if: ${{ ! cancelled() }} | |
- run: ./mill test.testOnly LiveVarsAnalysisTests | |
if: ${{ ! cancelled() }} | |
- run: ./mill test.testOnly ir.IRTest | |
if: ${{ ! cancelled() }} | |
- run: ./mill test.testOnly ir.CILVisitorTest | |
if: ${{ ! cancelled() }} | |
- run: ./mill test.testOnly ir.InterpreterTests | |
if: ${{ ! cancelled() }} | |
- run: ./mill test.testOnly ir.InvariantTest | |
if: ${{ ! cancelled() }} | |
- run: ./mill test.testOnly ProcedureSummaryTests | |
if: ${{ ! cancelled() }} | |
- run: ./mill test.testOnly TaintAnalysisTests | |
if: ${{ ! cancelled() }} | |
AnalysisSystemTests: | |
runs-on: ubuntu-latest | |
container: | |
image: ghcr.io/uq-pac/basil-dev:latest | |
credentials: | |
username: ${{ github.actor }} | |
password: ${{ secrets.github_token }} | |
steps: | |
- uses: actions/checkout@v4 | |
- run: ./mill test.compile | |
- run: echo "All systemtest suites:" & ./mill test.testOnly '*SystemTests*' -- -z 'xxxx' | |
- run: ./mill test.testOnly DSAMemoryRegionSystemTestsBAP | |
if: ${{ ! cancelled() }} | |
- run: ./mill test.testOnly DSAMemoryRegionSystemTestsGTIRB | |
if: ${{ ! cancelled() }} | |
- run: ./mill test.testOnly AnalysisSystemTestsBAP | |
if: ${{ ! cancelled() }} | |
- run: ./mill test.testOnly AnalysisSystemTestsGTIRB | |
if: ${{ ! cancelled() }} |