heel 0.1.1

Cross-platform native sandboxing library for running untrusted code
Documentation
name: Test

on:
  workflow_call:

env:
  CARGO_TERM_COLOR: always

jobs:
  test:
    name: ${{ matrix.os }}
    runs-on: ${{ matrix.os }}
    strategy:
      fail-fast: false
      matrix:
        os: [ubuntu-24.04, windows-latest, macos-latest]
        include:
          - os: ubuntu-24.04
            is_linux: true
    steps:
      - uses: actions/checkout@v4
      - uses: dtolnay/rust-toolchain@nightly
      - uses: Swatinem/rust-cache@v2
        with:
          shared-key: test-${{ matrix.os }}

      - name: Build
        run: cargo build --verbose --all-features

      - name: System Environment Check (Linux)
        if: matrix.is_linux
        run: |
          echo "=== Running System Check ==="
          cargo run --example system_check

      - name: Run unit tests
        run: cargo test --verbose --all-features

      - name: Run security test (Linux)
        if: matrix.is_linux
        run: cargo run --example security_test
        continue-on-error: true

      - name: Test sandbox isolation (Linux)
        if: matrix.is_linux
        run: cargo run --example debug_sandbox