Add NullAway integration tests #19
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: Python Test | |
on: | |
push: | |
branches: [ main ] | |
pull_request: | |
branches: [ main ] | |
jobs: | |
python-script-test: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout project sources | |
uses: actions/checkout@v3 | |
with: | |
fetch-depth: 0 | |
- name: Setup Python | |
uses: actions/setup-python@v2 | |
with: | |
python-version: 3.8 | |
- name: Setup Gradle | |
uses: gradle/gradle-build-action@v2 | |
- name: Run tests | |
run: python TestMain.py | |
ubuntu-specimin-test: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout project sources | |
uses: actions/checkout@v3 | |
with: | |
repository: njit-jerse/specimin | |
fetch-depth: 0 # so that spotless can ratchet; see https://github.com/diffplug/spotless/issues/710 | |
- name: Setup Java | |
uses: actions/setup-java@v4 | |
with: | |
distribution: 'corretto' | |
java-version: '17' | |
- name: Setup Gradle | |
uses: gradle/gradle-build-action@v2 | |
- name: export Specimin PATH | |
run: echo "SPECIMIN=$(pwd)" >> $GITHUB_ENV | |
- name: Setup Python | |
uses: actions/setup-python@v2 | |
with: | |
python-version: 3.8 | |
- name: Checkout specimin-evaluation repository | |
uses: actions/checkout@v3 | |
with: | |
path: specimin-evaluation | |
- name: Run evaluation script | |
run: | | |
cd specimin-evaluation | |
echo "specimin path-> $SPECIMIN" | |
python main.py | |
- name: Check evaluation status | |
run: diff -uw src/main/resources/target_status.json specimin-evaluation/ISSUES/target_status.json | |
- name: Compile minimized programs | |
run: | | |
cd specimin-evaluation | |
sh check_compilation.sh 1 | |
- name: Check targets compile status | |
run: | | |
cd specimin-evaluation | |
sh check_compilation.sh 1 | |
cd .. | |
diff -uw src/main/resources/min_program_compile_status.json specimin-evaluation/ISSUES/compile_status.json | |
- name: Check preservation status | |
run: diff -uw src/main/resources/preservation_status.json specimin-evaluation/ISSUES/preservation_status.json | |
windows-specimin-test: | |
runs-on: windows-latest | |
steps: | |
- name: Checkout project sources | |
uses: actions/checkout@v3 | |
with: | |
repository: njit-jerse/specimin | |
fetch-depth: 0 # so that spotless can ratchet; see https://github.com/diffplug/spotless/issues/710 | |
- name: Setup Java | |
uses: actions/setup-java@v4 | |
with: | |
distribution: 'corretto' | |
java-version: '17' | |
- name: Setup Gradle | |
uses: gradle/gradle-build-action@v2 | |
- name: Setup Python | |
uses: actions/setup-python@v2 | |
with: | |
python-version: 3.8 | |
- name: Checkout specimin-evaluation repository | |
uses: actions/checkout@v3 | |
with: | |
path: specimin-evaluation | |
- name: Run evaluation script | |
# cf-1291: test typical integration test | |
# cf-577: download + unzip + rename/file access errors | |
# cf-691: download + unzip 2 | |
# cf-4614: slightly different than expected CF outputs | |
run: | | |
set SPECIMIN=%cd% | |
cd specimin-evaluation | |
echo specimin path-^> %SPECIMIN% | |
python main.py --debug cf-1291 | |
python main.py --debug cf-577 | |
python main.py --debug cf-691 | |
python main.py --debug cf-4614 | |
python main.py --debug na-97 | |
shell: cmd | |
- name: Compile minimized programs | |
run: | | |
set SPECIMIN=%cd% | |
cd specimin-evaluation | |
echo specimin path-^> %SPECIMIN% | |
check_compilation.bat 1 | |
shell: cmd |