Skip to content

Parameterize programs #62

Parameterize programs

Parameterize programs #62

Workflow file for this run

name: Test
on:
push:
pull_request:
jobs:
check-flake:
name: Check flake
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Install nix
uses: cachix/install-nix-action@v24
with:
github_access_token: ${{ secrets.GITHUB_TOKEN }}
- name: Check flake
run: nix flake check --all-systems
test-stable:
name: Test - stable toolchain
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Install nix
uses: cachix/install-nix-action@v24
with:
github_access_token: ${{ secrets.GITHUB_TOKEN }}
- name: Enable Rust cache
uses: Swatinem/rust-cache@v2
- name: Run all checks
run: |
nix develop .#ci --command bash -c "just check"
test-msrv:
name: Test - MSRV toolchain
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Install nix
uses: cachix/install-nix-action@v24
with:
github_access_token: ${{ secrets.GITHUB_TOKEN }}
- name: Enable Rust cache
uses: Swatinem/rust-cache@v2
- name: Run unit tests
run: |
nix develop .#msrv --command bash -c "just test"
test-fuzz:
name: Test - fuzzer
runs-on: ubuntu-latest
needs: test-stable
strategy:
matrix:
fuzz_target:
- compile_parse_tree
- compile_text
- display_parse_tree
- parse_value_rtt
- parse_witness_json_rtt
- parse_witness_module_rtt
- reconstruct_value
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Install nix
uses: cachix/install-nix-action@v24
with:
github_access_token: ${{ secrets.GITHUB_TOKEN }}
- name: Enable Rust cache
uses: Swatinem/rust-cache@v2
- name: Run fuzz target ${{ matrix.fuzz_target }}
run: |
nix develop .#fuzz --command bash -c "just fuzz ${{ matrix.fuzz_target }}"
build-integration:
name: Build - integration tests
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Install nix
uses: cachix/install-nix-action@v24
with:
github_access_token: ${{ secrets.GITHUB_TOKEN }}
- name: Enable Rust cache
uses: Swatinem/rust-cache@v2
- name: Build each integration test
run: |
nix develop .#ci --command bash -c "just build_integration"
build-wasm:
name: Build - WASM
runs-on: ubuntu-latest
needs: test-stable
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Install nix
uses: cachix/install-nix-action@v24
with:
github_access_token: ${{ secrets.GITHUB_TOKEN }}
- name: Enable Rust cache
uses: Swatinem/rust-cache@v2
- name: Build WASM library
run: |
nix develop .#wasm --command bash -c "just build_wasm"