mirror of
https://github.com/1Password/arboard.git
synced 2025-12-23 06:01:09 +00:00
Found via these commands:
codespell -L crate,complies
markdownlint *.md --disable MD024
See a detailed description of the rules is available at
https://github.com/markdownlint/markdownlint/blob/master/docs/RULES.md
121 lines
3.2 KiB
YAML
121 lines
3.2 KiB
YAML
name: Test
|
|
|
|
on:
|
|
push:
|
|
branches: [ master ]
|
|
pull_request:
|
|
branches: [ master ]
|
|
|
|
jobs:
|
|
rustfmt:
|
|
runs-on: ubuntu-20.04
|
|
steps:
|
|
- uses: actions-rs/toolchain@v1
|
|
with:
|
|
toolchain: stable
|
|
override: true
|
|
components: rustfmt
|
|
- uses: actions/checkout@v2
|
|
- name: Check formatting
|
|
uses: actions-rs/cargo@v1
|
|
with:
|
|
command: fmt
|
|
args: --all -- --check
|
|
|
|
clippy:
|
|
needs: rustfmt
|
|
runs-on: ${{ matrix.os }}
|
|
strategy:
|
|
matrix:
|
|
os: [macos-latest, windows-latest, ubuntu-latest]
|
|
steps:
|
|
- uses: actions-rs/toolchain@v1
|
|
with:
|
|
toolchain: stable
|
|
override: true
|
|
components: clippy
|
|
- uses: actions/checkout@v2
|
|
|
|
- name: Run `cargo clippy` with no features
|
|
uses: actions-rs/cargo@v1
|
|
with:
|
|
command: clippy
|
|
args: --verbose --no-default-features -- -D warnings
|
|
|
|
- name: Run `cargo clippy` with `image-data` feature
|
|
uses: actions-rs/cargo@v1
|
|
with:
|
|
command: clippy
|
|
args: --verbose --no-default-features --features image-data -- -D warnings
|
|
|
|
- name: Run `cargo clippy` with `wayland-data-control` feature
|
|
uses: actions-rs/cargo@v1
|
|
with:
|
|
command: clippy
|
|
args: --verbose --no-default-features --features wayland-data-control -- -D warnings
|
|
|
|
- name: Run `cargo clippy` with all features
|
|
uses: actions-rs/cargo@v1
|
|
with:
|
|
command: clippy
|
|
args: --verbose --all-features -- -D warnings
|
|
|
|
test:
|
|
needs: clippy
|
|
runs-on: ${{ matrix.os }}
|
|
strategy:
|
|
matrix:
|
|
# No Linux test for now as it just fails due to not having a desktop environment.
|
|
os: [macos-latest, windows-latest]
|
|
steps:
|
|
- uses: actions-rs/toolchain@v1
|
|
with:
|
|
toolchain: stable
|
|
override: true
|
|
- name: Checkout
|
|
uses: actions/checkout@v2
|
|
- name: Run tests with no features
|
|
uses: actions-rs/cargo@v1
|
|
with:
|
|
command: test
|
|
args: --no-default-features
|
|
- name: Run tests with `image-data` feature
|
|
uses: actions-rs/cargo@v1
|
|
with:
|
|
command: test
|
|
args: --no-default-features --features image-data
|
|
- name: Run tests with `wayland-data-control` feature
|
|
uses: actions-rs/cargo@v1
|
|
with:
|
|
command: test
|
|
args: --no-default-features --features wayland-data-control
|
|
- name: Run tests with all features
|
|
uses: actions-rs/cargo@v1
|
|
with:
|
|
command: test
|
|
args: --all-features
|
|
|
|
miri:
|
|
needs: clippy
|
|
env:
|
|
MIRIFLAGS: -Zmiri-symbolic-alignment-check
|
|
runs-on: ${{ matrix.os }}
|
|
strategy:
|
|
matrix:
|
|
# Currently, only Windows has soundness tests.
|
|
os: [windows-latest]
|
|
steps:
|
|
- uses: actions-rs/toolchain@v1
|
|
with:
|
|
toolchain: nightly
|
|
override: true
|
|
components: miri
|
|
|
|
- name: Checkout
|
|
uses: actions/checkout@v2
|
|
|
|
- name: Check soundness
|
|
uses: actions-rs/cargo@v1
|
|
with:
|
|
command: miri
|
|
args: test windows_clipboard --features image-data
|