unimock 0.6.8

A versatile and developer-friendly trait mocking library
Documentation
name: Rust

on:
  push:
  pull_request:

env:
  CARGO_TERM_COLOR: always

jobs:
  test:
    runs-on: ubuntu-latest

    steps:
      - uses: actions/checkout@v3
      - uses: dtolnay/rust-toolchain@stable
      - uses: taiki-e/install-action@cargo-hack
      - name: Test macros
        run: cd unimock_macros && cargo test
      - name: Test
        run: >
          cargo hack --feature-powerset \
            --exclude-no-default-features \
            --at-least-one-of std,critical-section \
            --mutually-exclusive-features std,critical-section \
            --mutually-exclusive-features std,spin-lock \
            --group-features mock-std,mock-tokio-1,mock-futures-io-0-3 \
            --group-features critical-section,spin-lock \
            --exclude-features nightly-tests,unstable-doc-cfg \
            test
      - name: Doctest
        run: cargo test --doc --features mock-core,mock-std
      - name: Clippy
        run: cargo clippy --all-targets -- -D warnings

  test-nightly:
    runs-on: ubuntu-latest

    steps:
      - uses: actions/checkout@v3
      - uses: dtolnay/rust-toolchain@nightly
      - name: Test nightly features
        run: cargo test --all --all-features