rusty-man/.builds/archlinux.yml
Robin Krahl 1a518d7509
Add integration tests
This patch adds an integration test suite using the insta crate for
snapshot testing.  The test suite is tested for all supported Rust
versions and should always succeed for the MSRV (currently 1.40.0) and
the current stable Rust version.

However there are some minor changes in the configuration format between
Rust versions, so tests that don’t work on all supported Rust versions
are marked with the ignore attribute.  But even the ignored tests should
work on the stable Rust release.
2020-08-11 09:31:20 +02:00

43 lines
927 B
YAML

# Copyright (C) 2020 Robin Krahl <robin.krahl@ireas.org>
# SPDX-License-Identifier: CC0-1.0
image: archlinux
packages:
- gnupg
- reuse
- rustup
sources:
- https://git.sr.ht/~ireas/rusty-man
tasks:
- setup: |
rustup set profile minimal
rustup default stable
rustup component add rustfmt
rustup component add clippy
- version: |
rustc -V
- verify: |
cd rusty-man
curl -s "https://pgp.ireas.org/0x6D533958F070C57C.txt" | gpg --import
git verify-commit HEAD
- reuse: |
cd rusty-man
reuse lint
- build: |
cd rusty-man
cargo build --release
- test: |
cd rusty-man
cargo doc
cargo test
cargo test -- --ignored
- clippy: |
cd rusty-man
cargo clippy -- -D warnings
- format: |
cd rusty-man
cargo fmt -- --check
triggers:
- action: email
condition: failure
to: robin.krahl@ireas.org