diff --git a/.gitea/workflows/tests.yml b/.gitea/workflows/tests.yml new file mode 100644 index 0000000..7c6123a --- /dev/null +++ b/.gitea/workflows/tests.yml @@ -0,0 +1,33 @@ +name: Linux unit tests + +on: + push: + pull_request: + workflow_dispatch: + +jobs: + unit-tests: + runs-on: ubuntu-latest + timeout-minutes: 10 + + steps: + - name: Check out repository + uses: actions/checkout@v4 + + - name: Install build dependencies + run: | + sudo apt-get update + sudo apt-get install --yes cmake ninja-build g++ + + - name: Configure + run: >- + cmake -S . -B build -G Ninja + -DCMAKE_BUILD_TYPE=Debug + -DIZO_BUILD_TESTS=ON + -DIZO_BUILD_EXAMPLE=ON + + - name: Build + run: cmake --build build --parallel + + - name: Run unit tests + run: ctest --test-dir build --output-on-failure diff --git a/README.md b/README.md index b233803..ac7ee8e 100644 --- a/README.md +++ b/README.md @@ -27,6 +27,9 @@ cmake --build build ctest --test-dir build ``` +The unit test suite targets Linux and runs automatically on Gitea Actions using +an `ubuntu-latest` runner. + To consume an installed copy: ```cmake