Skip to content

Commit 153ef19

Browse files
.github/workflows/test.yml: new, for generically running scripts/test.py on Github.
NB we use windows-2019, not windows-latest because the latter has faulty VS with NAN problem.
1 parent 07f59af commit 153ef19

File tree

1 file changed

+62
-0
lines changed

1 file changed

+62
-0
lines changed

.github/workflows/test.yml

Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
# Run scripts/test.py directly on multiple Github servers. Instead of
2+
# specifying individual inputs, we support a single string input which is used
3+
# for the command line directly.
4+
#
5+
# This ensures we behave exactly like scripts/test.py, without confusion caused
6+
# by having to translate between differing APIs.
7+
8+
name: Tests
9+
10+
on:
11+
#schedule:
12+
# - cron: '47 4 * * *'
13+
#pull_request:
14+
# branches: [main]
15+
workflow_dispatch:
16+
inputs:
17+
args:
18+
type: string
19+
default: ''
20+
description: 'Arguments to pass to scripts/test.py'
21+
22+
jobs:
23+
24+
test:
25+
name: Test
26+
runs-on: ${{ matrix.os }}
27+
strategy:
28+
matrix:
29+
os: [ubuntu-latest, windows-2019, macos-13, macos-14]
30+
31+
# Avoid cancelling of all runs after a single failure.
32+
fail-fast: false
33+
34+
steps:
35+
36+
- uses: actions/checkout@v4
37+
38+
- uses: actions/setup-python@v5
39+
with:
40+
python-version: '3.12'
41+
42+
# https://github.com/pypa/cibuildwheel/issues/2114
43+
# https://cibuildwheel.pypa.io/en/stable/faq/#emulation
44+
#
45+
- name: Set up QEMU
46+
if: runner.os == 'Linux' && runner.arch == 'X64'
47+
uses: docker/setup-qemu-action@v3
48+
with:
49+
platforms: all
50+
51+
- name: test
52+
env:
53+
PYMUPDF_test_args: ${{inputs.args}}
54+
run:
55+
python scripts/test.py -a PYMUPDF_test_args
56+
57+
# Upload generated wheels, to be accessible from github Actions page.
58+
#
59+
- uses: actions/upload-artifact@v4
60+
with:
61+
path: ./wheelhouse/pymupdf*.whl
62+
name: artifact-${{ matrix.os }}

0 commit comments

Comments
 (0)