Skip to content

Docs

Docs #19

Workflow file for this run

name: Run Pytests
on:
push:
paths:
- '**.py'
- '**.toml'
- '**.yml'
- '**.yaml'
pull_request:
types:
- opened
- synchronize
- reopened
paths:
- '**.py'
- '**.toml'
- '**.yml'
- '**.yaml'
defaults:
run:
shell: bash
env:
LANG: en_US.utf-8
LC_ALL: en_US.utf-8
PYTHON_VERSION: '3.10'
PROJECT_NAME: volttron-lib-web
jobs:
run-tests:
strategy:
matrix:
os: [ubuntu-22.04]
python: ['3.10', '3.11']
runs-on: ${{ matrix.os }}
steps:
- run: echo "🎉 The job was automatically triggered by a ${{ github.event_name }} event."
- run: echo "🐧 This job is now running on a ${{ runner.os }} server hosted by GitHub!"
- run: echo "🔎 The name of your branch is ${{ github.ref }} and your repository is ${{ github.repository }}."
#----------------------------------------------
# check-out repo and set-up python
#----------------------------------------------
- name: Checkout code
uses: actions/checkout@v3
- name: Set up Python ${{ matrix.python }}
id: setup-python
uses: actions/setup-python@v2
with:
python-version: ${{ matrix.python }}
#----------------------------------------------
# ----- install & configure poetry -----
#----------------------------------------------
- name: Install Poetry
uses: snok/install-poetry@v1
with:
version: 1.2.2
virtualenvs-create: true
virtualenvs-in-project: true
installer-parallel: true
# #----------------------------------------------
# # load cached venv if cache exists
# #----------------------------------------------
# - name: Load cached venv
# id: cached-poetry-dependencies
# uses: actions/[email protected]
# with:
# path: .venv
# key: venv-${{ runner.os }}-${{ steps.setup-python.outputs.python-version }}-${{ hashFiles('**/poetry.lock') }}
# #----------------------------------------------
# # install dependencies if cache does not exist
# #----------------------------------------------
# - name: Install dependencies
# if: steps.cached-poetry-dependencies.outputs.cache-hit != 'true'
# run: poetry install --no-interaction --no-root
#----------------------------------------------
# install your root project, and run tests.
#----------------------------------------------
- name: Install library and run tests
run: |
poetry install --no-interaction
poetry add --group dev pytest-github-actions-annotate-failures
poetry run pytest --cov=src tests/integration_tests/
poetry run pytest --cov=src tests/unit_tests/