Repository navigation
67 lines (66 loc) · 2.73 KB
/
Copy pathe2e.yml
File metadata and controls
67 lines (66 loc) · 2.73 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
# SPDX-License-Identifier: MPL-2.0
#
# e2e.yml — Root-workspace test gate.
#
# The root workspace has four members (vcl-total, vcltotal-fmt, vcltotal-lint,
# vcltotal-core) and its whole test surface lives in `tests/`, because the root
# crate is a re-export facade over fmt + lint. Per-crate UNIT counts are
# therefore all zero, which makes a truncated `cargo test` log look like an
# empty gate; it is not. Measured 2026-07-21: 102 tests.
#
# tests/e2e_test.rs 20
# tests/fuzz_test.rs 13
# tests/integration_test.rs 59
# tests/property_test.rs 10
#
# This job previously ran only property_test + integration_test, so 33 of the
# 102 — every e2e and fuzz test — never ran in CI. It now runs the whole
# workspace.
#
# The former "Provide echidna sibling" steps have been removed. They cloned a
# whole repository on every run for nothing: `src/interface` (the member that
# carries the external `echidna-core` path-dep) is deliberately NOT a root
# workspace member, so neither `cargo test --workspace` nor `tests/e2e.sh`
# ever resolves it. Verified 2026-07-21 by running both with no sibling
# present: 102 tests pass, e2e.sh reports 19/19. echidna-client is gated
# separately in backend-matrix.yml, which does need the sibling.
name: E2E, Property and Aspect Tests
on:
push: { branches: [main] }
pull_request: { branches: ['**'] }
permissions:
contents: read
jobs:
e2e:
name: E2E structural validation
runs-on: ubuntu-latest
timeout-minutes: 15
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v4
- name: Install Rust
uses: dtolnay/rust-toolchain@4be9e76fd7c4901c61fb841f559994984270fce7 # stable
- uses: Swatinem/rust-cache@6323deb102c322ba6fcbdcafc7e3dddab59af2b6 # v2
- name: Run E2E validation
run: bash tests/e2e.sh
property:
name: Root workspace tests
runs-on: ubuntu-latest
timeout-minutes: 15
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v4
- name: Install Rust
uses: dtolnay/rust-toolchain@4be9e76fd7c4901c61fb841f559994984270fce7 # stable
- uses: Swatinem/rust-cache@6323deb102c322ba6fcbdcafc7e3dddab59af2b6 # v2
# Whole workspace, all targets — not a hand-picked subset. Previously
# `--test property_test` + `--test integration_test` only, which silently
# skipped tests/e2e_test.rs and tests/fuzz_test.rs.
- name: Run root workspace tests (expect 102)
run: cargo test --workspace --all-targets --locked
aspect:
name: Aspect tests
runs-on: ubuntu-latest
timeout-minutes: 15
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v4
- name: Run aspect tests
run: bash tests/aspect_tests.sh