adaptive-lighting/tests
Bas Nijholt 9732877f55
Add tests for light mode change detection (issue #1275)
Update existing tests and add new test_attributes_have_changed_light_mode_switch
to verify the behavior of PR #1282 which detects when lights externally switch
from color_temp mode to RGB/XY mode.

Key test coverage:
- color_temp → RGB: detected ✓
- color_temp → XY: detected ✓
- RGB/XY → color_temp: not detected by mode check (but may trigger RGB comparison)
- Same color mode: not detected as change
- adapt_color=False: mode changes not detected
2025-11-27 09:43:44 -08:00
..
__init__.py Copy tests from https://github.com/home-assistant/core/pull/40626 2022-08-28 12:05:31 -07:00
conftest.py Bump to 1.27.0 for fixes in 2025.12 (#1293) 2025-11-27 09:06:41 -08:00
README.md Fix Docker setup and CI installation (#1212) 2025-06-15 21:31:51 -07:00
test_adaptation_utils.py Test HA core v2023.6 until v2024.2 (#942) 2024-04-06 10:14:54 +02:00
test_color_and_brightness.py Test HA core v2023.6 until v2024.2 (#942) 2024-04-06 10:14:54 +02:00
test_config_flow.py Skip broken test (#1226) 2025-06-15 22:16:31 -07:00
test_hass_utils.py Test HA core v2023.6 until v2024.2 (#942) 2024-04-06 10:14:54 +02:00
test_init.py Test HA core v2023.6 until v2024.2 (#942) 2024-04-06 10:14:54 +02:00
test_switch.py Add tests for light mode change detection (issue #1275) 2025-11-27 09:43:44 -08:00

Developer notes for the tests directory

To run the tests, check out the CI configuration to see how they are executed in the CI pipeline. Alternatively, you can use the provided Docker image to run the tests locally or run them with VS Code directly in the dev container.

To run the tests using the Docker image, navigate to the adaptive-lighting repo folder and execute the following command:

Linux / MacOS / Windows PowerShell:

docker run -v ${PWD}:/app basnijholt/adaptive-lighting:latest
  • In windows command prompt, the command is:
    docker run -v %cd%:/app basnijholt/adaptive-lighting:latest
    

This command will download the Docker image from the adaptive-lighting Docker Hub repo and run the tests.

If you prefer to build the image yourself, use the following command:

docker build -t basnijholt/adaptive-lighting:latest --no-cache --progress=plain .

This might be necessary if the image on Docker Hub is outdated or if the test_dependencies.py file is updated.

Passing arguments to pytest

You can pass arguments to pytest by appending them to the command:

For example, to run the tests with a custom log format, use the following command (this also gets rid of the captured stderr output):

docker run -v $(pwd):/app basnijholt/adaptive-lighting:latest --show-capture=log --log-format="%(asctime)s %(levelname)-8s %(name)s:%(filename)s:%(lineno)s %(message)s" --log-date-format="%H:%M:%S" tests/components/adaptive_lighting/