name: Run Tests on: push: {} env: RUNNER_TOOL_CACHE: /toolcache jobs: run-tests: runs-on: python steps: - uses: actions/checkout@v4 - name: Install Python uses: actions/setup-python@v4 - name: Install poetry uses: abatilo/actions-poetry@v4 - name: Setup a local virtual environment (if no poetry.toml file) run: | poetry config virtualenvs.create true --local poetry config virtualenvs.in-project true --local - uses: actions/cache@v3 name: Define a cache for the virtual environment based on the dependencies lock file with: path: ./.venv key: venv-${{ hashFiles('poetry.lock') }} - name: Install the project dependencies run: poetry install - name: Run the automated tests (for example) run: poetry run pytest -v