Skip to content

Merge pull request #222 from MaddyGuthridge/dependabot/pip/mypy-1.11.2 #1069

Merge pull request #222 from MaddyGuthridge/dependabot/pip/mypy-1.11.2

Merge pull request #222 from MaddyGuthridge/dependabot/pip/mypy-1.11.2 #1069

Workflow file for this run

# This workflow will install Python dependencies, run tests and lint with a single version of Python
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions
name: Test and Lint
on: [push]
jobs:
Pytest:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
submodules: 'recursive'
- name: Set up Python 3.9
uses: actions/setup-python@v5
with:
python-version: 3.9
- uses: Gr1N/setup-poetry@v8
- uses: actions/cache@v4
with:
path: ~/.cache/pypoetry/virtualenvs
key: ${{ runner.os }}-poetry-${{ hashFiles('poetry.lock') }}
- run: poetry --version
- run: poetry install
- name: Test with pytest
run: |
poetry run coverage run -m pytest
- name: Generate code coverage report
run: |
poetry run coverage report
Flake8:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
submodules: 'recursive'
- name: Set up Python 3.9
uses: actions/setup-python@v5
with:
python-version: 3.9
- uses: Gr1N/setup-poetry@v8
- uses: actions/cache@v4
with:
path: ~/.cache/pypoetry/virtualenvs
key: ${{ runner.os }}-poetry-${{ hashFiles('poetry.lock') }}
- run: poetry --version
- run: poetry install
- name: Lint with flake8
run: |
poetry run flake8
Mypy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
submodules: 'recursive'
- name: Set up Python 3.9
uses: actions/setup-python@v5
with:
python-version: 3.9
- uses: Gr1N/setup-poetry@v8
- uses: actions/cache@v4
with:
path: ~/.cache/pypoetry/virtualenvs
key: ${{ runner.os }}-poetry-${{ hashFiles('poetry.lock') }}
- run: poetry --version
- run: poetry install
- name: Lint with mypy
run: |
poetry run mypy .
Load:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
submodules: 'recursive'
- name: Set up Python 3.9
uses: actions/setup-python@v5
with:
python-version: 3.9
- uses: Gr1N/setup-poetry@v8
- uses: actions/cache@v4
with:
path: ~/.cache/pypoetry/virtualenvs
key: ${{ runner.os }}-poetry-${{ hashFiles('poetry.lock') }}
- run: poetry --version
- run: poetry install
- name: Test script load
run: |
poetry run python src/device_universal.py
poetry run python src/device_event_forward.py