Files
pcsx-redux/.github/workflows/linux-coverage.yml
T
Nicolas 'Pixel' Noble 5e6981217c Merge remote-tracking branch 'origin/spu-accuracy' into fuckit
gte.cc took the deletion, since the GTE got rewritten and split upstream.
cdrom.cc took this branch's rewrite whole and had the two things main grew
since re-applied by hand: the magic_enum include path, and the CDRomLogger
data/seek hooks. There is no audio hook because CDDA playback isn't here yet.
2026-09-04 23:24:44 -07:00

61 lines
2.0 KiB
YAML

name: Linux CI coverage
on:
push:
branches:
- main
pull_request:
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
coverage:
runs-on: ubuntu-latest
container:
image: ghcr.io/grumpycoders/pcsx-redux-build:latest
env:
TEST_RESULTS: /tmp/test-results
BUILD: Coverage
CPPFLAGS: -Wformat -Werror=format-security
steps:
- name: Update lcov, because https://bugs.launchpad.net/ubuntu/+source/lcov/+bug/2029924
run: |
apt install -y cpanminus
cpanm DateTime
cpanm Capture::Tiny
wget https://github.com/linux-test-project/lcov/releases/download/v2.0/lcov-2.0.tar.gz
tar xf lcov-2.0.tar.gz
cd lcov-2.0
make install
- uses: actions/checkout@v4
with:
submodules: recursive
set-safe-directory: true
- run: |
wget https://github.com/JonathanDotCel/unirom8_bootdisc_and_firmware_for_ps1/releases/download/8.0.K/UNIROM_BOOTDISC_8.0.K.zip
- run: |
unzip -o UNIROM_BOOTDISC_8.0.K.zip
- run: |
make -j 2 all pcsx-redux-tests
make -C src/mips/openbios -j 2
cp src/mips/openbios/openbios.bin .
- run: |
make -C src/mips/openbios clean
make -C src/mips/tests -j 2 PCSX_TESTS=true
cp ./openbios.bin src/mips/openbios/
- run: |
xvfb-run catchsegv ./pcsx-redux -stdout -lua_stdout -testmode -no-gui-logs -iso UNIROM_BOOTDISC_8.0.K.bin -exec "dofile 'src/mips/tests/cdrom/create-test-iso.lua'"
- name: Test
run: |
xvfb-run catchsegv ./pcsx-redux-tests
- name: Produce code coverage
run: |
apt install -y luarocks luajit
luarocks install luacov
luarocks install luacov-reporter-lcov
luacov -r lcov
lcov --ignore-errors mismatch --directory . --capture --output-file coverage.info
- uses: codecov/codecov-action@v2