Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 28 additions & 0 deletions .github/workflows/ctest.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
name: ctest

# CERALIVE addition: build libsrt with the developer test apps and the
# GoogleTest unit/bonding suite enabled, then run the full ctest suite.
# The upstream cxx11 workflow also runs ctest, but couples it to the
# SonarCloud build-wrapper; this job is a self-contained regression gate.

on:
push:
branches: [ master ]
pull_request:
branches: [ master ]
types: [opened, synchronize, reopened]

jobs:
ctest:
name: ubuntu ctest
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4
- name: deps
run: sudo apt-get update && sudo apt-get install -y libssl-dev
- name: configure
run: cmake -B build -DENABLE_TESTING=ON -DENABLE_UNITTESTS=ON -DENABLE_BONDING=ON
- name: build
run: cmake --build build -j$(nproc)
- name: test
run: ctest --test-dir build --output-on-failure
12 changes: 12 additions & 0 deletions AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,18 @@ Provides `libsrt` at compile time to `ceracoder` and `srtla`. `irl-srt-server` u

Standard CMake. Consumed as a submodule by `ceracoder` and `srtla` — do not build standalone unless testing.

## TEST (ctest)

The GoogleTest unit + bonding suite is gated on `ENABLE_UNITTESTS` (with `ENABLE_CXX11`, ON by default); `ENABLE_TESTING` additionally builds the developer test apps. Both are OFF by default. Run the full suite with:

```bash
cmake -B build -DENABLE_TESTING=ON -DENABLE_UNITTESTS=ON -DENABLE_BONDING=ON
cmake --build build -j$(nproc)
ctest --test-dir build --output-on-failure
```

Baseline: **286/286 passed** (1 disabled: `CTimer.SleeptoAccuracy`). CI runs this via `.github/workflows/ctest.yaml`. Note: `ENABLE_TESTING=ON` alone registers no ctest tests — `ENABLE_UNITTESTS=ON` is what wires the gtest suite into ctest.

## WHERE TO LOOK

| Need | Location |
Expand Down
Loading