Skip to content

Commit a243e43

Browse files
hyperpolymathclaude
andcommitted
ci: add E2E workflow for SAR mission and crypto channel tests
Wires the existing end_to_end.rs Rust tests into CI. Tests SAR mission simulation, ECM attack response, comms loss, signal analysis, and post-quantum cryptographic channel establishment. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent 8fed0a5 commit a243e43

1 file changed

Lines changed: 54 additions & 0 deletions

File tree

.github/workflows/e2e.yml

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
# SPDX-License-Identifier: PMPL-1.0-or-later
2+
# Copyright (c) 2026 Jonathan D.A. Jewell (hyperpolymath) <j.d.a.jewell@open.ac.uk>
3+
#
4+
# End-to-end and integration tests for robodog-ecm.
5+
# Tests SAR mission simulation, ECM attack, comms loss, signal analysis,
6+
# and post-quantum cryptographic channel establishment.
7+
8+
name: E2E + Integration Tests
9+
10+
on:
11+
push:
12+
branches: [main, master, develop]
13+
paths:
14+
- 'src/**'
15+
- 'Cargo.toml'
16+
- '.github/workflows/e2e.yml'
17+
pull_request:
18+
branches: [main, master]
19+
paths:
20+
- 'src/**'
21+
- 'Cargo.toml'
22+
workflow_dispatch:
23+
24+
permissions: read-all
25+
26+
concurrency:
27+
group: e2e-${{ github.ref }}
28+
cancel-in-progress: true
29+
30+
jobs:
31+
e2e:
32+
name: E2E — SAR Mission + ECM + Crypto
33+
runs-on: ubuntu-latest
34+
timeout-minutes: 15
35+
36+
steps:
37+
- name: Checkout
38+
uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
39+
40+
- name: Install Rust toolchain
41+
uses: dtolnay/rust-toolchain@4be9e76fd7c4901c61fb841f559994984270fce7 # stable
42+
43+
- name: Rust cache
44+
uses: Swatinem/rust-cache@779680da715d629ac1d338a641029a2f4372abb5 # v2
45+
46+
- name: Run unit tests
47+
run: cargo test --workspace
48+
49+
- name: Run E2E tests specifically
50+
run: cargo test --test end_to_end -- --nocapture
51+
working-directory: src/rust
52+
53+
- name: Run benchmarks (if present)
54+
run: cargo bench --workspace 2>/dev/null || echo "No benchmarks configured yet"

0 commit comments

Comments
 (0)