summaryrefslogtreecommitdiffstats
path: root/.github/workflows/pythonpackage.yml
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--.github/workflows/pythonpackage.yml45
1 files changed, 45 insertions, 0 deletions
diff --git a/.github/workflows/pythonpackage.yml b/.github/workflows/pythonpackage.yml
new file mode 100644
index 0000000..9685a6f
--- /dev/null
+++ b/.github/workflows/pythonpackage.yml
@@ -0,0 +1,45 @@
+name: Test Rich module
+
+on: [pull_request]
+
+jobs:
+ build:
+ runs-on: ${{ matrix.os }}
+ strategy:
+ matrix:
+ os: [windows-latest, ubuntu-latest, macos-latest]
+ python-version: [3.6, 3.7, 3.8, 3.9]
+ defaults:
+ run:
+ shell: bash
+ steps:
+ - uses: actions/checkout@v1
+ - name: Set up Python ${{ matrix.python-version }}
+ uses: actions/setup-python@v2
+ with:
+ python-version: ${{ matrix.python-version }}
+ architecture: x64
+ - name: Install and configure Poetry
+ uses: snok/install-poetry@v1.1.1
+ with:
+ version: 1.1.4
+ virtualenvs-create: false
+ - name: Install dependencies
+ run: poetry install
+ if: steps.cached-poetry-dependencies.outputs.cache-hit != 'true'
+ - name: Format check with black
+ run: make format-check
+ - name: Typecheck with mypy
+ run: make typecheck
+ - name: Test with pytest
+ run: |
+ pip install .
+ python -m pytest tests -v --cov=./rich --cov-report=xml:./coverage.xml --cov-report term-missing
+ - name: Upload code coverage
+ uses: codecov/codecov-action@v1.0.10
+ with:
+ token: ${{ secrets.CODECOV_TOKEN }}
+ file: ./coverage.xml
+ name: rich
+ flags: unittests
+ env_vars: OS,PYTHON