adaptive-lighting/.github/workflows/pytest.yaml
Bas Nijholt c1528ec10a
Refactor, simplify code, rename, and set minimal HA core ≥2022.11 (#655)
* Rename TurnOnOffListener to AdaptiveLightingManager

* Bump Python version

* Refactor and unify methods that are called once

* Simplify adaptation_utils.py

* Improve readability in adaptation_utils.py

* More renames

* Simplify

* More renames and simplifications

* fix test

* simplify _supported_features

* rename

* walrus

* drop old astral support

* Only support HA  ≥2021.06

* Require 2016.06

* Try 2023.1

* even more old versions

* test

* more versions

* verify that only ≥2022.11 works

* named args

* setdefault

* no astral v1

* var

* simplify

* no need to pass adapt_brightness and adapt_color

* Add comment
2023-07-22 21:19:01 -07:00

80 lines
2.7 KiB
YAML

name: pytest
on:
push:
branches: [master]
pull_request:
jobs:
pytest:
name: Run pytest
runs-on: ubuntu-20.04
timeout-minutes: 60
strategy:
fail-fast: false
matrix:
include:
- python-version: "3.10"
core-version: "2022.11.5"
- python-version: "3.10"
core-version: "2022.12.9"
- python-version: "3.10"
core-version: "2023.1.7"
- python-version: "3.10"
core-version: "2023.2.5"
- python-version: "3.10"
core-version: "2023.3.6"
- python-version: "3.10"
core-version: "2023.4.6"
- python-version: "3.10"
core-version: "2023.5.2"
- python-version: "3.11"
core-version: "2023.6.1"
- python-version: "3.11"
core-version: "dev"
steps:
- name: Check out code from GitHub
uses: actions/checkout@v3
- name: Install Home Assistant
uses: ./.github/workflows/install_dependencies
with:
python-version: ${{ matrix.python-version }}
core-version: ${{ matrix.core-version }}
- name: Click here for troubleshooting steps if tests break again.
run: |
echo "::notice::### If tests fail, try these debug steps: ###"
echo "::notice::### 1. Replace '-qq' from .github/workflow/pytest.yaml. with '-v' for extra verbosity. ###"
echo "::notice::### 2. Push or run action again. ###"
echo "::notice::### 3. Check for any log messages in github actions resembling the following using CTRL+F ###
echo "::notice::### 4. ERROR:homeassistant.setup:Setup failed for 'component': Unable to import component: No module named ''module'' ###"
echo "::notice::### 5. add 'component'.'module' (without the '') from the above log into the 'required' list inside of 'test_dependencies.py' ###"
echo "::notice::### 6. Try again! If more issues persist they should be easily solvable by reading the verbose logs now. ###"
- name: Link custom_components/adaptive_lighting
run: |
cd core
# Link adaptive_lighting tests
cd tests/components/
ln -fs ../../../tests adaptive_lighting
cd -
- name: Run pytest
timeout-minutes: 60
run: |
export PYTHONPATH=${PYTHONPATH}:${PWD}
cd core
python3 -X dev -m pytest \
-vvv \
-qq \
--timeout=9 \
--durations=10 \
--cov="custom_components.adaptive_lighting" \
--cov-report=xml \
-o console_output_style=count \
-p no:sugar \
tests/components/adaptive_lighting
env:
HA_CLONE: true