adaptive-lighting/tests
Benjamin Auquite cb967aeeb7
Create intentionally over-redundant state_change tests and fix #541 (#544)
* add transition_timer test and debug

* syntax error

* test

* Update switch.py

* Revert "test"

This reverts commit b8009e0a1a.

* Update test_switch.py

* add `create_transition_events` to tests.

nearly done

* tests are done!

* pop is for dictionaries

* Update test_switch.py

* combine the tests

* pin markdown-code-runner

* Pin with '=='

* Update test_switch.py

* pin in the correct place 😅

* Update test_switch.py

* Use timer.is_running

* Update test_switch.py

* ensure timer is running in tests

* this passes the test

* Update test_switch.py

* Do not create new list when not needed

* Remove empty deps

* Remove CONF_ULID_MAX_LENGTH (which is not configurable)

* this shouldn't pass the test but it does.

---------

Co-authored-by: Bas Nijholt <basnijholt@gmail.com>
Co-authored-by: Bas Nijholt <bas@nijho.lt>
2023-04-06 13:53:23 -05:00
..
__init__.py Copy tests from https://github.com/home-assistant/core/pull/40626 2022-08-28 12:05:31 -07:00
README.md Fix the docker tests instructions (#543) 2023-04-05 09:13:57 -07:00
test_config_flow.py Try to copy over files 2022-08-28 13:42:55 -07:00
test_init.py Fix test_successful_config_entry and test_unload_entry 2022-08-28 14:30:24 -07:00
test_switch.py Create intentionally over-redundant state_change tests and fix #541 (#544) 2023-04-06 13:53:23 -05: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.

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 .

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/