-
Notifications
You must be signed in to change notification settings - Fork 4
74 lines (65 loc) · 1.96 KB
/
coverage.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
name: "piel-coverage"
on:
workflow_dispatch:
push:
branches:
- develop
defaults:
run:
shell: bash
env:
PIP_DISABLE_PIP_VERSION_CHECK: 1
FORCE_COLOR: 1 # Get colored pytest output
permissions:
contents: read
jobs:
build:
name: Coverage Test
runs-on: ubuntu-latest
defaults:
run:
shell: bash
env: # Set environment variables for the whole job
PIP_ONLY_BINARY: gdstk
MPLBACKEND: agg
steps:
- uses: actions/checkout@v1
- name: Set up Python 3.10
uses: actions/setup-python@v2
with:
python-version: "3.10"
- name: Set up uv
# Install a specific uv version using the installer
run: curl -LsSf https://astral.sh/uv/0.3.0/install.sh | sh
#----------------------------------------------
# install dependencies if cache does not exist
#----------------------------------------------
- name: Install dependencies
run: |
uv venv venv
source venv/bin/activate
uv pip install -e .[dev]
#----------------------------------------------
# add matrix specifics and run test suite
#----------------------------------------------
- name: Run tests
run: |
source venv/bin/activate
python -m coverage run -m pytest -rA tests
python -m coverage report -m
echo "total=$(coverage report --format=total)" >> $GITHUB_ENV
echo '### Total coverage: ${{ env.total }}%'
- name: "Create badge"
# if: ${{ github.ref == 'refs/heads/latest' }}
# https://gist.githubusercontent.com/nedbat/8c6980f77988a327348f9b02bbaf67f5
uses: schneegans/[email protected]
with:
auth: ${{ secrets.GH_PAT }}
gistID: 605df9da19061593715258b77e06ab9b
filename: piel_coverage.json
label: Coverage
message: ${{ env.total }}%
minColorRange: 40
maxColorRange: 95
valColorRange: ${{ env.total }}
style: "for-the-badge"