You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
52 lines
1.7 KiB
52 lines
1.7 KiB
# https://docs.github.com/en/actions/using-github-hosted-runners/about-github-hosted-runners#supported-runners-and-hardware-resources |
|
# TODO: Line 48, enable pytest --doctest-modules |
|
|
|
name: Tests |
|
on: |
|
push: |
|
branches: [ main ] |
|
pull_request: |
|
branches: [ main ] |
|
jobs: |
|
Tests: |
|
strategy: |
|
fail-fast: false |
|
max-parallel: 15 |
|
matrix: |
|
node: [14.x, 16.x, 18.x] |
|
python: ["3.6", "3.8", "3.10"] |
|
os: [macos-latest, ubuntu-latest, windows-latest] |
|
runs-on: ${{ matrix.os }} |
|
steps: |
|
- name: Checkout Repository |
|
uses: actions/checkout@v3 |
|
- name: Use Node.js ${{ matrix.node }} |
|
uses: actions/setup-node@v3 |
|
with: |
|
node-version: ${{ matrix.node }} |
|
- name: Use Python ${{ matrix.python }} |
|
uses: actions/setup-python@v4 |
|
with: |
|
python-version: ${{ matrix.python }} |
|
env: |
|
PYTHON_VERSION: ${{ matrix.python }} # Why do this? |
|
- name: Install Dependencies |
|
run: | |
|
npm install --no-progress |
|
pip install flake8 pytest |
|
- name: Set Windows environment |
|
if: startsWith(matrix.os, 'windows') |
|
run: | |
|
echo 'GYP_MSVS_VERSION=2015' >> $Env:GITHUB_ENV |
|
echo 'GYP_MSVS_OVERRIDE_PATH=C:\\Dummy' >> $Env:GITHUB_ENV |
|
- name: Lint Python |
|
if: startsWith(matrix.os, 'ubuntu') |
|
run: flake8 . --ignore=E203,W503 --max-complexity=101 --max-line-length=88 --show-source --statistics |
|
- name: Run Python tests |
|
run: python -m pytest |
|
# - name: Run doctests with pytest |
|
# run: python -m pytest --doctest-modules |
|
- name: Environment Information |
|
run: npx envinfo |
|
- name: Run Node tests |
|
run: npm test
|
|
|