aboutsummaryrefslogtreecommitdiff
path: root/.github/workflows/rust.yml
diff options
context:
space:
mode:
Diffstat (limited to '.github/workflows/rust.yml')
-rw-r--r--.github/workflows/rust.yml32
1 files changed, 32 insertions, 0 deletions
diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml
new file mode 100644
index 0000000..523dce5
--- /dev/null
+++ b/.github/workflows/rust.yml
@@ -0,0 +1,32 @@
+name: Test hex
+on: [push, pull_request]
+
+env:
+ RUST_BACKTRACE: '1'
+ RUSTFLAGS: -D warnings
+
+jobs:
+ test:
+ runs-on: ${{ matrix.os }}
+ strategy:
+ # We want the tests to run on all configurations, even if jobs (like on nightly), fail.
+ fail-fast: false
+ matrix:
+ os: [ubuntu-latest, windows-latest, macos-latest]
+ rust: [stable, beta, nightly]
+
+ steps:
+ - uses: actions/checkout@v2
+ - uses: hecrj/setup-rust-action@v1
+ with:
+ rust-version: ${{ matrix.rust }}
+ - name: Build
+ run: cargo build --verbose
+ - name: Run tests
+ run: cargo test --verbose
+ - name: Run tests [no-default-features]
+ run: cargo test --verbose --no-default-features
+ - name: Run tests [serde]
+ run: cargo test --verbose --features serde
+ - name: Validate benches still work
+ run: cargo bench --all -- --test