summaryrefslogtreecommitdiff
path: root/.github/workflows
diff options
context:
space:
mode:
Diffstat (limited to '.github/workflows')
-rw-r--r--.github/workflows/testsuite.yml50
1 files changed, 50 insertions, 0 deletions
diff --git a/.github/workflows/testsuite.yml b/.github/workflows/testsuite.yml
new file mode 100644
index 00000000..b59e08d9
--- /dev/null
+++ b/.github/workflows/testsuite.yml
@@ -0,0 +1,50 @@
+# Licensed under the Apache License: http://www.apache.org/licenses/LICENSE-2.0
+# For details: https://github.com/nedbat/coveragepy/blob/master/NOTICE.txt
+
+name: "Test Suite"
+
+on:
+ push:
+ branches: ["master"]
+ pull_request:
+ branches: ["master"]
+ workflow_dispatch:
+
+jobs:
+ tests:
+ name: "Python ${{ matrix.python-version }} on ${{ matrix.os }}"
+ runs-on: "${{ matrix.os }}"
+
+ strategy:
+ matrix:
+ os: [ubuntu-latest, macos-latest, windows-latest]
+ python-version: ["2.7", "3.5", "3.6", "3.7", "3.8", "3.9", "pypy3"]
+ exclude:
+ # Windows PyPy doesn't seem to work?
+ - os: windows-latest
+ python-version: "pypy3"
+ fail-fast: false
+
+ steps:
+ - uses: "actions/checkout@v2"
+ - uses: "actions/setup-python@v2"
+ with:
+ python-version: "${{ matrix.python-version }}"
+
+ - name: "Install Visual C++ for Python 2.7"
+ if: runner.os == 'Windows'
+ run: |
+ choco install vcpython27 -f -y
+
+ - name: "Install dependencies"
+ shell: bash
+ run: |
+ set -xe
+ python -VV
+ python -m site
+ python -m pip install -r requirements/ci.pip
+
+ - name: "Run tox targets for ${{ matrix.python-version }}"
+ shell: bash
+ run: |
+ python -m tox