2023-03-26 18:18:18 -07:00
# Developer notes for the tests directory
To run the tests, check out the [CI configuration ](../.github/workflows/pytest.yml ) to see how they are executed in the CI pipeline.
2023-06-12 00:33:07 +02:00
Alternatively, you can use the provided Docker image to run the tests locally or run them with VS Code directly in the dev container.
2023-03-26 18:18:18 -07:00
To run the tests using the Docker image, navigate to the `adaptive-lighting` repo folder and execute the following command:
2023-04-05 11:13:57 -05:00
Linux / MacOS / Windows PowerShell:
2023-03-26 18:18:18 -07:00
```bash
2023-04-05 11:13:57 -05:00
docker run -v ${PWD}:/app basnijholt/adaptive-lighting:latest
2023-03-26 18:18:18 -07:00
```
2023-04-05 11:13:57 -05:00
- In windows command prompt, the command is:
```bash
docker run -v %cd%:/app basnijholt/adaptive-lighting:latest
```
2023-04-04 01:47:08 -05:00
2023-03-26 19:50:40 -07:00
This command will download the Docker image from [the adaptive-lighting Docker Hub repo ](https://hub.docker.com/r/basnijholt/adaptive-lighting ) and run the tests.
2023-03-26 18:18:18 -07:00
If you prefer to build the image yourself, use the following command:
```bash
2025-06-15 21:31:51 -07:00
docker build -t basnijholt/adaptive-lighting:latest --no-cache --progress=plain .
2023-03-26 18:18:18 -07:00
```
This might be necessary if the image on Docker Hub is outdated or if the [`test_dependencies.py` ](../test_dependencies.py ) file is updated.
2023-03-26 22:47:50 -07:00
## 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):
```bash
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/
```