1 | # TODO: Line 47, enable pytest --doctest-modules
|
---|
2 |
|
---|
3 | name: Tests
|
---|
4 | on: [push, pull_request]
|
---|
5 | jobs:
|
---|
6 | Tests:
|
---|
7 | strategy:
|
---|
8 | fail-fast: false
|
---|
9 | max-parallel: 15
|
---|
10 | matrix:
|
---|
11 | node: [10.x, 12.x, 14.x]
|
---|
12 | python: [3.6, 3.8, 3.9]
|
---|
13 | os: [macos-latest, ubuntu-latest, windows-latest]
|
---|
14 | runs-on: ${{ matrix.os }}
|
---|
15 | steps:
|
---|
16 | - name: Checkout Repository
|
---|
17 | uses: actions/checkout@v2
|
---|
18 | - name: Use Node.js ${{ matrix.node }}
|
---|
19 | uses: actions/setup-node@v1
|
---|
20 | with:
|
---|
21 | node-version: ${{ matrix.node }}
|
---|
22 | - name: Use Python ${{ matrix.python }}
|
---|
23 | uses: actions/setup-python@v2
|
---|
24 | with:
|
---|
25 | python-version: ${{ matrix.python }}
|
---|
26 | env:
|
---|
27 | PYTHON_VERSION: ${{ matrix.python }}
|
---|
28 | - name: Install Dependencies
|
---|
29 | run: |
|
---|
30 | npm install --no-progress
|
---|
31 | pip install flake8 pytest
|
---|
32 | - name: Set Windows environment
|
---|
33 | if: matrix.os == 'windows-latest'
|
---|
34 | run:
|
---|
35 | echo '::set-env name=GYP_MSVS_VERSION::2015'
|
---|
36 | echo '::set-env name=GYP_MSVS_OVERRIDE_PATH::C:\\Dummy'
|
---|
37 | - name: Lint Python
|
---|
38 | if: matrix.os == 'ubuntu-latest'
|
---|
39 | run: |
|
---|
40 | # stop the build if there are Python syntax errors or undefined names
|
---|
41 | flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
|
---|
42 | # exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide
|
---|
43 | flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
|
---|
44 | - name: Run Python tests
|
---|
45 | run: |
|
---|
46 | python -m pytest
|
---|
47 | # - name: Run doctests with pytest
|
---|
48 | # run: python -m pytest --doctest-modules
|
---|
49 | - name: Run Node tests
|
---|
50 | run: |
|
---|
51 | npm test
|
---|