Ivan Boldyrev c35eac0f01
fix(air-trace): air-trace native-only compilation fix (#429)
It was not correctly refactored in the #381.
Add a CI check for the `air-trace` native-only mode.
2023-02-06 19:59:47 +07:00

55 lines
1.3 KiB
YAML

name: "Run tests"
on:
pull_request:
concurrency:
group: "${{ github.workflow }}-${{ github.ref }}"
cancel-in-progress: true
env:
RUST_TEST_THREADS: 1
jobs:
tests:
name: "aquavm / cargo test"
timeout-minutes: 60
runs-on: builder
steps:
- uses: actions/checkout@v3
- name: Setup rust toolchain
uses: actions-rust-lang/setup-rust-toolchain@v1
- name: Install marine
uses: baptiste0928/cargo-install@v1.3.0
with:
crate: marine
- name: Build Wasm binary for tests
run: ./build_test_binaries.sh
working-directory: air/tests/test_module
- name: Run cargo fmt
run: cargo fmt --all -- --check
- name: Run cargo check
run: cargo check
- name: Check native air-trace
run: cargo check --package air-trace --no-default-features
- name: Run cargo test
run: |
cargo test --release
# Check that it does compile
cargo bench --no-run
# The `memory` sanitizer on cargo test has false positive even on empty project.
for san in address leak; do
RUSTFLAGS="-Z sanitizer=$san" cargo test --features test_with_native_code --target x86_64-unknown-linux-gnu
done
- name: Run cargo clippy
run: cargo clippy -v