Skip to content

Introduce sound data builder #189

Introduce sound data builder

Introduce sound data builder #189

name: Tests
on:
push:
branches: [ master ]
pull_request:
branches: [ master ]
jobs:
Linux_gcc:
runs-on: ubuntu-latest
strategy:
matrix:
gccver: [ 9, 10, 11 ]
steps:
- name: Set up cmake
uses: jwlawson/actions-setup-cmake@v1.11
with:
cmake-version: '3.19.x'
- name: Set up gcc
uses: egor-tensin/setup-gcc@v1
with:
version: ${{ matrix.gccver }}
platform: x64
- uses: actions/checkout@v2
with:
lfs: 'true'
- name: gitlfs
run: git lfs pull
- name: ccache
uses: hendrikmuhs/ccache-action@v1
with:
key: ${{ github.job }}-${{ matrix.gccver }}-${{ matrix.os }}
max-size: 100M
- name: CMake
run: |
cmake \
-DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache \
-B ${{github.workspace}}/build .
- name: Build
working-directory: ${{github.workspace}}/build
run: make OpenALpp_UnitTests OpenALpp_Integration OpenALpp_ApprovalTests -j
# Commented out because one does not simply acquire a sound context
# - name: Test
# run: ./OpenALpp_UnitTests --order rand
# working-directory: ${{github.workspace}}/build/bin/
- name: CopyAssets
run: cp -r ${{github.workspace}}/assets ${{github.workspace}}/build/test/approval_tests
- name: ApprovalTest
run: ./OpenALpp_ApprovalTests --order rand
working-directory: ${{github.workspace}}/build/test/approval_tests
Linux_clang:
runs-on: ubuntu-latest
strategy:
matrix:
clangver: [ 13 ]
steps:
- name: Set up cmake
uses: jwlawson/actions-setup-cmake@v1.11
with:
cmake-version: '3.19.x'
- name: Set up clang
uses: egor-tensin/setup-clang@v1
with:
version: ${{ matrix.clangver }}
platform: x64
- uses: actions/checkout@v2
- name: ccache
uses: hendrikmuhs/ccache-action@v1
with:
key: ${{ github.job }}-${{ matrix.clangver }}-${{ matrix.os }}
max-size: 100M
- name: CMake
run: |
cmake \
-DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache \
-B ${{github.workspace}}/build .
- name: Build
working-directory: ${{github.workspace}}/build
run: make OpenALpp_UnitTests OpenALpp_Integration OpenALpp_ApprovalTests -j
# Commented out because one does not simply acquire a sound context
# run: ./OpenALpp_UnitTests --order rand
# working-directory: ${{github.workspace}}/build/bin/
# Do not run approval tests on clang as there seem to be some float inconsistencies happening
# - name: CopyAssets
# run: cp -r ${{github.workspace}}/assets ${{github.workspace}}/build/test/approval_tests
#
# - name: ApprovalTest
# run: ./OpenALpp_ApprovalTests --order rand
# working-directory: ${{github.workspace}}/build/test/approval_tests
Windows:
runs-on: windows-2022
steps:
- name: Set up cmake
uses: jwlawson/actions-setup-cmake@v1.11
with:
cmake-version: '3.19.x'
- uses: actions/checkout@v2
- name: Enable Developer Command Prompt
uses: ilammy/msvc-dev-cmd@v1.12.1
- name: CMake
run: cmake -B ${{github.workspace}}/build . -DOALPP_STATIC_LIBRARY=ON
- name: Build
working-directory: ${{github.workspace}}/build
run: cmake --build .
- name: Copy assets
run: cp -r assets ${{github.workspace}}/build/test/unit_tests/assets
- run: net start audiosrv
- name: Setup virtual soundcard
uses: LABSN/sound-ci-helpers@v1.0.1
- name: Test
working-directory: ${{github.workspace}}/build/test/unit_tests
run: OpenALpp_UnitTests.exe --order rand
Web:
runs-on: ubuntu-latest
env:
EMCC_CCACHE: 1
steps:
- name: Set up cmake
uses: jwlawson/actions-setup-cmake@v1.11
with:
cmake-version: '3.19.x'
- name: Set up gcc
uses: egor-tensin/setup-gcc@v1
with:
version: 9
platform: x64
- uses: mymindstorm/setup-emsdk@v11
- uses: actions/checkout@v2
- name: ccache
uses: hendrikmuhs/ccache-action@v1
with:
key: ${{ github.job }}-${{ matrix.os }}-${{ matrix.type }}
max-size: 100M
- name: CMake
run: |
emcmake cmake -B ${{github.workspace}}/build \
-DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache \
.
- name: Copy assets
run: cp -r assets ${{github.workspace}}/build/test/integration_tests/
- name: Build
working-directory: ${{github.workspace}}/build
run: emmake make OpenALpp_UnitTests OpenALpp_Integration
Mac_clang:
runs-on: macos-latest
steps:
- name: Set up cmake
uses: jwlawson/actions-setup-cmake@v1.11
with:
cmake-version: '3.19.x'
- name: Install dependencies
run: |
brew install cmake ninja
- uses: actions/checkout@v2
- name: ccache
uses: hendrikmuhs/ccache-action@v1
with:
key: ${{ github.job }}-${{ matrix.os }}
max-size: 100M
- name: CMake
run: |
cmake \
-DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache \
-B ${{github.workspace}}/build .
- name: Build
working-directory: ${{github.workspace}}/build
run: make OpenALpp_UnitTests OpenALpp_Integration -j 4
# - name: Test
# run: ./OpenALpp_UnitTests --order rand
# working-directory: ${{github.workspace}}/build/bin/