File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 2121 steps :
2222 - uses : actions/checkout@v4
2323
24+ - name : Install Qt system dependencies (Linux only)
25+ if : runner.os == 'Linux'
26+ run : |
27+ sudo apt-get update
28+ sudo apt-get install -y \
29+ libEGL1 \
30+ libxkbcommon-x11-0 \
31+ libxcb-icccm4 \
32+ libxcb-image0 \
33+ libxcb-keysyms1 \
34+ libxcb-randr0 \
35+ libxcb-render-util0 \
36+ libxcb-xinerama0 \
37+ libxcb-xfixes0 \
38+ x11-utils \
39+ xvfb
40+
2441 - name : Set up Python ${{ matrix.python-version }}
2542 uses : actions/setup-python@v5
2643 with :
Original file line number Diff line number Diff line change @@ -53,6 +53,13 @@ pyqt5 = [
5353 " PyQtWebEngine" ,
5454]
5555
56+ testing = [
57+ " pytest" ,
58+ " pytest-qt" ,
59+ " pytest-xvfb" , # ← handles virtual display automatically on Linux
60+ " pytest-cov" ,
61+ ]
62+
5663[project .urls ]
5764"Bug Tracker" = " https://github.com/Image-Analysis-Hub/Epicure/issues"
5865"Documentation" = " https://image-analysis-hub.github.io/Epicure/"
Original file line number Diff line number Diff line change @@ -27,10 +27,11 @@ passenv =
2727 XAUTHORITY
2828 NUMPY_EXPERIMENTAL_ARRAY_FUNCTION
2929 PYVISTA_OFF_SCREEN
30- deps =
31- pytest
32- pytest-qt
33- pytest-cov
30+ extras = testing # dependincies in pyproject.toml
31+ setenv =
32+ # Use offscreen rendering on Linux CI (no display needed)
33+ PYTHONFAULTHANDLER = 1
34+ QT_QPA_PLATFORM = {env:QT_QPA_PLATFORM:offscreen}
3435
3536commands = pytest -v --color =yes
3637# --cov=epicure --cov-report=xml
You can’t perform that action at this time.
0 commit comments