Merge pull request #1776 from infogulch/master
Add iso prolog / logtalk tests to test runner
This commit is contained in:
28
.github/workflows/test.yml
vendored
28
.github/workflows/test.yml
vendored
@@ -8,7 +8,7 @@ jobs:
|
|||||||
matrix:
|
matrix:
|
||||||
include:
|
include:
|
||||||
- { os: windows-latest, rust-version: stable, shell: 'msys2 {0}' }
|
- { os: windows-latest, rust-version: stable, shell: 'msys2 {0}' }
|
||||||
- { os: macos-10.15, rust-version: stable, shell: bash }
|
- { os: macos-11, rust-version: stable, shell: bash }
|
||||||
- { os: ubuntu-20.04, rust-version: stable, shell: bash }
|
- { os: ubuntu-20.04, rust-version: stable, shell: bash }
|
||||||
- { os: ubuntu-20.04, rust-version: 1.63, shell: bash }
|
- { os: ubuntu-20.04, rust-version: 1.63, shell: bash }
|
||||||
- { os: ubuntu-20.04, rust-version: beta, shell: bash }
|
- { os: ubuntu-20.04, rust-version: beta, shell: bash }
|
||||||
@@ -16,9 +16,6 @@ jobs:
|
|||||||
defaults:
|
defaults:
|
||||||
run:
|
run:
|
||||||
shell: ${{ matrix.shell }}
|
shell: ${{ matrix.shell }}
|
||||||
outputs:
|
|
||||||
os: ${{ matrix.os }}
|
|
||||||
rust-version: ${{ matrix.rust-version }}
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v3
|
- uses: actions/checkout@v3
|
||||||
- uses: dtolnay/rust-toolchain@master
|
- uses: dtolnay/rust-toolchain@master
|
||||||
@@ -50,13 +47,13 @@ jobs:
|
|||||||
- name: Test
|
- name: Test
|
||||||
run: cargo test --verbose --all
|
run: cargo test --verbose --all
|
||||||
|
|
||||||
# Only run formatting & style check on one job to not spam warnings.
|
# Run code formatting and style checks on one job to not spam warnings.
|
||||||
- name: Check formatting
|
- name: Check formatting
|
||||||
if: startsWith(matrix.os,'ubuntu') && matrix.rust-version == 'stable'
|
if: startsWith(matrix.os,'ubuntu') && matrix.rust-version == 'stable'
|
||||||
run: cargo fmt --check || echo "::warning ::cargo fmt found some formatting changes that may improve readability"
|
run: cargo fmt --check || echo "::warning ::cargo fmt found some formatting changes that may improve readability"
|
||||||
- name: Check clippy
|
- name: Check clippy
|
||||||
if: startsWith(matrix.os,'ubuntu') && matrix.rust-version == 'stable'
|
if: startsWith(matrix.os,'ubuntu') && matrix.rust-version == 'stable'
|
||||||
run: cargo clippy || echo "::warning ::cargo clippy found some code style changes that may be more idiomatic"
|
run: cargo clippy --no-deps || echo "::warning ::cargo clippy found some code style changes that may be more idiomatic"
|
||||||
|
|
||||||
# On stable rust builds, build a binary and publish as a github actions
|
# On stable rust builds, build a binary and publish as a github actions
|
||||||
# artifact. These binaries could be useful for testing the pipeline but
|
# artifact. These binaries could be useful for testing the pipeline but
|
||||||
@@ -64,10 +61,27 @@ jobs:
|
|||||||
# TODO: Check that they actually work.
|
# TODO: Check that they actually work.
|
||||||
- name: Build release binary
|
- name: Build release binary
|
||||||
if: matrix.rust-version == 'stable'
|
if: matrix.rust-version == 'stable'
|
||||||
run: cargo rustc --verbose --bin scryer-prolog --release -- -D warnings
|
run: |
|
||||||
|
cargo rustc --verbose --bin scryer-prolog --release -- -D warnings
|
||||||
|
echo "$PWD/target/release" >> $GITHUB_PATH
|
||||||
- name: Publish artifact
|
- name: Publish artifact
|
||||||
if: matrix.rust-version == 'stable'
|
if: matrix.rust-version == 'stable'
|
||||||
uses: actions/upload-artifact@v3
|
uses: actions/upload-artifact@v3
|
||||||
with:
|
with:
|
||||||
path: target/release/scryer-prolog*
|
path: target/release/scryer-prolog*
|
||||||
name: scryer-prolog_${{ matrix.os }}
|
name: scryer-prolog_${{ matrix.os }}
|
||||||
|
|
||||||
|
# Run iso compliance tests.
|
||||||
|
- name: Install Logtalk
|
||||||
|
if: startsWith(matrix.os,'ubuntu') && matrix.rust-version == 'stable'
|
||||||
|
uses: logtalk-actions/setup-logtalk@master
|
||||||
|
with:
|
||||||
|
logtalk-version: git
|
||||||
|
logtalk-tool-dependencies: false
|
||||||
|
- name: Run compliance test suite
|
||||||
|
if: startsWith(matrix.os,'ubuntu') && matrix.rust-version == 'stable'
|
||||||
|
continue-on-error: true
|
||||||
|
working-directory: /home/runner/logtalk/tests/prolog
|
||||||
|
run: |
|
||||||
|
scryer-prolog -v
|
||||||
|
logtalk_tester -p scryer -g "set_logtalk_flag(clean,off)" -w -t 360
|
||||||
|
|||||||
Reference in New Issue
Block a user