Run opus tests #42
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
on: [ push, pull_request ] | |
name: Run opus tests | |
jobs: | |
test-basic: | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
# TODO: test 32-bit targets | |
# TODO: test aarch64 targets | |
os: | |
- ubuntu-latest | |
- macos-13 # x86 | |
- macos-14 # arm64 | |
- windows-latest | |
profile: [ release, dev ] | |
fail-fast: false | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Install toolchain | |
uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: stable | |
override: true | |
profile: minimal | |
- name: Execute tests | |
uses: actions-rs/cargo@v1 | |
with: | |
command: test | |
args: --all --profile=${{ matrix.profile }} -- --nocapture | |
test-vectors: | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
os: | |
- ubuntu-latest | |
- macos-13 # x86 | |
- macos-14 # arm64 | |
- windows-latest | |
fail-fast: false | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Install Rust toolchain | |
uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: stable | |
override: true | |
profile: minimal | |
- name: Setup clang | |
# macOS has clang already | |
if: runner.os != 'macos' | |
uses: aminya/setup-cpp@v1 | |
with: | |
compiler: llvm | |
- name: Build (release) | |
uses: actions-rs/cargo@v1 | |
with: | |
command: build | |
args: --release --all-features | |
- name: Download test vectors from IETF site | |
run: | | |
curl https://www.ietf.org/proceedings/98/slides/materials-98-codec-opus-newvectors-00.tar.gz -o materials-98-codec-opus-newvectors-00.tar.gz | |
tar -xzf materials-98-codec-opus-newvectors-00.tar.gz | |
# the vectors are now extracted to opus_newvectors | |
- name: Run test vectors | |
uses: actions-rs/cargo@v1 | |
with: | |
command: run | |
args: --release --bin run_vectors2 --features bins,test,test-upstream-libopus -- opus_newvectors | |
# TODO: upload a dump? 800M feels a bit too much for gha though.. | |
# - name: Upload logs | |
# if: always() # always upload logs, even if the test fails | |
# uses: actions/upload-artifact@v3 | |
# with: | |
# name: test-logs | |
# path: logs_*.txt |