serai/.github/workflows/monero-tests.yaml
Luke Parker 534f951165
Consolidate GitHub CI actions, split out Monero (#71)
* Consolidate GitHub CI actions, split out Monero

build now includes the specified Rust toolchain/components.

Added a test dependencies action which grabs Foundry and Monero.

Split the Monero v14 job into a matrixed job in its own workflow flow. 
It's now only run when Monero has changes.

* Correct Monero unit/integration tests run timing

Additionally tests a feature-less Monero build.

Also removes a pointless Monero file, which already should have been 
removed, causing this workflow to be triggered.

* Correct exclusion and paths

Updates to FROST should re-run the Monero tests to ensure it didn't 
introduce API incompatibilities.
2022-07-29 09:36:09 -05:00

57 lines
1.4 KiB
YAML

name: Monero Tests
on:
push:
branches:
- develop
paths:
- "coins/monero/**"
pull_request:
paths:
- "coins/monero/**"
jobs:
# Only run these once since they will be consistent regardless of any node
unit-tests:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
submodules: "recursive"
- name: Test Dependencies
uses: ./.github/actions/test-dependencies
- name: Run Unit Tests Without Features
run: cargo test --package monero-serai --lib
- name: Run Unit Tests
run: cargo test --package monero-serai --all-features --lib
integration-tests:
runs-on: ubuntu-latest
# Test against all supported protocol versions
strategy:
matrix:
version: [v0.17.3.2, v0.18.0.0]
steps:
- uses: actions/checkout@v3
with:
submodules: "recursive"
- name: Test Dependencies
uses: ./.github/actions/test-dependencies
with:
monero-version: ${{ matrix.version }}
- name: Run Integration Tests Without Features
run: cargo test --package monero-serai --test '*'
- name: Run Integration Tests
# https://github.com/rust-lang/cargo/issues/8396
run: cargo test --package monero-serai --all-features --test '*'
- name: Run Processor's Monero Tests
run: cargo test --package serai-processor monero