bnr 0.1.2

Pure Rust implementation of the BNR XFS USB communication protocol
Documentation
name: bnr

on:
  push:
    branches:
      - main
  pull_request:
    branches:
      - main

jobs:
  rustfmt-clippy:
    runs-on: ubuntu-latest

    steps:
      - uses: actions/checkout@v3

      - name: Install stable
        uses: actions-rs/toolchain@v1
        with:
          profile: minimal
          toolchain: stable
          components: rustfmt, clippy

      - name: Run rustfmt
        uses: actions-rs/cargo@v1
        with:
          command: fmt
          args: -- --check

      - name: Run clippy
        uses: actions-rs/cargo@v1
        with:
          command: clippy
          args: --tests

  test-bnr:
    runs-on: ${{matrix.os}}
    strategy:
      matrix:
        os: [ubuntu-latest]
        target:
          - debian: null
            cross: null
            rust: null

    steps:
      - uses: actions/checkout@v3

      - name: Install stable
        uses: actions-rs/toolchain@v1
        with:
          profile: minimal
          toolchain: stable
          target: ${{matrix.target.rust}}
      - name: Run all the tests (debug)
        env:
          GITHUB_ACTIONS_OS: ${{matrix.os}}
          RUST_TARGET: ${{matrix.target.rust}}
        run: cargo test --all
      - name: Run all the tests (release)
        env:
          GITHUB_ACTIONS_OS: ${{matrix.os}}
          RUST_TARGET: ${{matrix.target.rust}}
        run: cargo test --all --release

  test-bnr-xfs:
    runs-on: ${{matrix.os}}
    strategy:
      matrix:
        os: [ubuntu-latest]
        target:
          - debian: null
            cross: null
            rust: null

    steps:
      - uses: actions/checkout@v3

      - name: Install stable
        uses: actions-rs/toolchain@v1
        with:
          profile: minimal
          toolchain: stable
          target: ${{matrix.target.rust}}
      - name: Run all the tests (debug)
        env:
          GITHUB_ACTIONS_OS: ${{matrix.os}}
          RUST_TARGET: ${{matrix.target.rust}}
        run: pushd bnr-xfs && cargo test --all && popd
      - name: Run all the tests (release)
        env:
          GITHUB_ACTIONS_OS: ${{matrix.os}}
          RUST_TARGET: ${{matrix.target.rust}}
        run: pushd bnr-xfs && cargo test --all --release && popd