on: [push, pull_request] name: CI tests jobs: linting: name: Run lints runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - uses: actions-rs/toolchain@v1 with: profile: minimal toolchain: stable override: true - run: rustup component add rustfmt - uses: actions-rs/cargo@v1 with: command: fmt args: --all -- --check - uses: actions-rs/cargo@v1 with: command: check - run: rustup component add clippy - uses: actions-rs/cargo@v1 with: command: clippy args: -- -D warnings test-linux: name: Test on Linux runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - uses: actions-rs/toolchain@v1 with: profile: minimal toolchain: stable override: true - uses: actions-rs/cargo@v1 with: command: test test-windows: name: Test on Windows runs-on: windows-latest steps: - run: git config --system core.autocrlf false && git config --system core.eol lf - uses: actions/checkout@v2 - uses: actions-rs/toolchain@v1 with: profile: minimal toolchain: stable override: true - uses: actions-rs/cargo@v1 with: command: test coverage: name: Code coverage runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - uses: actions-rs/toolchain@v1 with: profile: minimal toolchain: stable override: true - uses: actions-rs/tarpaulin@v0.1 with: version: "latest" args: "--ignore-tests" out-type: "Html" - uses: actions/upload-artifact@v2 with: name: tarpaulin-report path: tarpaulin-report.html