1
- # This workflow will install Python dependencies, run tests and lint with a single version of Python
2
- # For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-python
1
+ # This workflow will install Python dependencies, run tests, and lint with a single version of Python
2
+ # For more information, see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-python
3
3
4
4
name : Python application
5
5
@@ -14,26 +14,29 @@ permissions:
14
14
15
15
jobs :
16
16
build :
17
-
18
17
runs-on : ubuntu-latest
19
18
20
19
steps :
21
- - uses : actions/checkout@v4
22
- - name : Set up Python 3.10
23
- uses : actions/setup-python@v3
24
- with :
25
- python-version : " 3.10"
26
- - name : Install dependencies
27
- run : |
28
- python -m pip install --upgrade pip
29
- pip install flake8 pytest nbval
30
- if [ -f requirements.txt ]; then pip install -r requirements.txt; fi
31
- - name : Lint with flake8
32
- run : |
33
- # stop the build if there are Python syntax errors or undefined names
34
- flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
35
- # exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide
36
- flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
37
- - name : Test with pytest
38
- run : |
39
- pytest
20
+ - uses : actions/checkout@v4
21
+
22
+ - name : Set up Python 3.10
23
+ uses : actions/setup-python@v3
24
+ with :
25
+ python-version : " 3.10"
26
+
27
+ - name : Install dependencies
28
+ run : |
29
+ python -m pip install --upgrade pip
30
+ pip install flake8 pytest nbval # Install pytest and nbval for notebook validation
31
+ if [ -f requirements.txt ]; then pip install -r requirements.txt; fi
32
+
33
+ - name : Lint with flake8
34
+ run : |
35
+ # stop the build if there are Python syntax errors or undefined names
36
+ flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
37
+ # exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide
38
+ flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
39
+
40
+ - name : Test with pytest
41
+ run : |
42
+ pytest --nbval # This will run tests inside .ipynb files in the current directory
0 commit comments