name: Test
on:
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]
workflow_dispatch:
inputs:
debug_enabled:
description: 'Run with debug logging enabled'
type: boolean
required: false
default: false
env:
CARGO_TERM_COLOR: always
jobs:
check:
name: Check
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8
- name: Install Rust toolchain
shell: bash
run: |
rustup default stable
rustup component add rustfmt clippy
- name: Rust Cache
uses: Swatinem/rust-cache@779680da715d629ac1d338a641029a2f4372abb5
- name: Lint
run: make lint
- name: Format check
run: make fmt-check
- name: Check compilation (std)
run: cargo check --features std
- name: Check compilation (no-std, zero deps)
run: cargo check --no-default-features
- name: Check compilation (hashbrown)
run: cargo check --no-default-features --features hashbrown
- name: Test (std)
run: make test-std
- name: Test (no-std, zero deps)
run: make test-no-std
- name: Test (hashbrown)
run: make test-hashbrown