Jan Bouwhuis
d149bffb07
Do not fail MQTT setup if lights configured via yaml can't be validated ( #101649 )
...
* Add light
* Deduplicate code
* Follow up comment
2023-10-19 17:34:43 +02:00
Jan Bouwhuis
5b422daf36
Avoid redundant calls to `async_write_ha_state` in MQTT light ( #100690 )
...
* Limit state writes for mqtt light
* Additional tests and review follow up
2023-09-22 13:32:30 +02:00
Jan Bouwhuis
87ae5add8a
Fix mqtt light rgbww update without state topic ( #100707 )
...
* Fix mqtt light rgbww update without state topic
* Add @callback decprator and correct mired conv
2023-09-22 13:31:29 +02:00
Jan Bouwhuis
a66ad39c4e
Assign color_mode for mqtt light as ColorMode ( #100709 )
2023-09-22 12:09:37 +02:00
Jan Bouwhuis
7c22225cd1
Allow ADR 0007 compliant schema for mqtt ( #94305 )
...
* Enforce listed entities in MQTT yaml config
* Add tests for setup with listed items
* Fix test
* Remove validator add comment
* Update homeassistant/components/mqtt/__init__.py
Co-authored-by: Erik Montnemery <erik@montnemery.com>
---------
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-07-18 14:29:45 +02:00
Jan Bouwhuis
efcaad1179
Fix handling MQTT light brightness from zero rgb ( #96286 )
...
* Fix handling MQTT light brightness from zero rgb
* Fix log message
2023-07-11 14:22:12 -04:00
Franck Nijhof
3e85a29b86
Move overlapping pylint rules to ruff, disable mypy overlap ( #94359 )
2023-06-27 17:42:46 +02:00
Jan Bouwhuis
c984604a6c
Refactor some mqtt tests not the just use schema validation ( #94330 )
...
Remove help_test_validate_platform_config
2023-06-09 12:30:26 +02:00
Jan Bouwhuis
fc8c5f1bbd
Do not allow mqtt lights to set brightness to zero ( #91296 )
...
* Do not allow mqtt lights to set brightness to zero
* Loglevel to debug
* Typo
2023-04-14 09:01:29 +02:00
Jan Bouwhuis
bb15923968
Rename MQTT entry mock and cleanup ( #91223 )
...
Rename to mqtt_mock_entry and cleanup
2023-04-12 09:43:03 +02:00
Jan Bouwhuis
a404d5f6d7
Prepare MQTT platform tests part5 ( #90108 )
...
* Tests light_json
* Tests light_template
* Tests light
2023-03-24 08:41:04 +01:00
Jan Bouwhuis
d865440012
Prepare MQTT common tests part3 ( #90022 )
2023-03-21 09:19:20 +01:00
Jan Bouwhuis
fe49861e26
Prepare MQTT common tests part4 ( #90023 )
...
* Upd test_setting_attribute_via_mqtt_json_message
* Update test_setting_attribute_with_template
* Update test_update_with_json_attrs_not_dict
* Update test_update_with_json_attrs_bad_json
2023-03-21 09:07:46 +01:00
Jan Bouwhuis
91dbda1ce7
Add mqtt common tests for availability (part2) ( #89805 )
...
* update test_availability_when_connection_lost
* Adjust test_availability_without_topic
* Update test_default_availability_payload + helper
* Update test_default_availability_list_payload
* Use helper for async_setup_component
* Update test_default_availability_list_*
* Update test_custom_availability_payload
2023-03-21 08:20:37 +01:00
Jan Bouwhuis
c81a38effb
Mqtt prepare test base part1 ( #89796 )
...
* Refactor test_reloadable
* Refactor test_disabling_and_enabling_entry
* optimize test_unload_config_entry
* Cleanup help_test_unload_config_entry
* cleanup test_unload_entry
* Update test tls_version
* More tests to entry only
* Add validate and hassconfig patch
* Revert fixture changes patch_hass_config
* Follow up comments
2023-03-16 15:57:01 +01:00
Jan Bouwhuis
1a4b14c217
Fix MQTT rgb light brightness scaling ( #89264 )
...
* Normalize received RGB colors to 100% brightness
* Assert on rgb_color attribute
* Use max for RGB to get brightness
* Avoid division and add clamp
* remove clamp
Co-authored-by: Erik Montnemery <erik@montnemery.com>
---------
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-03-09 08:02:59 +01:00
Franck Nijhof
ed79265843
Enable Ruff PT006 ( #88165 )
...
* Enable Ruff PT006
* Adjust existing cases
* Fix tests
* Remove unneeded parentheses
2023-02-15 14:09:50 +01:00
epenet
bb174780b9
Apply registry type hints on mqtt platform tests ( #87758 )
...
Apply registry fixture types on platform tests
2023-02-09 11:53:56 +01:00
Jan Bouwhuis
df76e31cdf
Apply MQTT fixture types on platform tests ( #87722 )
...
* Apply MQTT fixture types on platform tests
* Add caplog type hint
* Add hass_ws_client type hint
* Add tmp_path type hint
* Add hass_client_no_auth type hint
2023-02-09 09:48:22 +01:00
Jan Bouwhuis
1a414f1433
Add hass and `None` return type on MQTT platform tests ( #87713 )
...
Add hass and `None` return type on MQTT tests
2023-02-08 18:08:03 +01:00
Sándor Oroszi
a0d41e1d97
Add hs_command_template and xy_command_template to mqtt light default schema ( #84988 )
...
* Add mqtt light hs_command_template
* Add mqtt light xy_command_template
2023-01-03 12:58:00 +01:00
Jan Bouwhuis
ee66ffc8de
Do not depend MQTT CI tests on debug logs ( #84783 )
...
* Do not depend MQTT CI tests on debug logs
* Leave Clean up expire as debug message
2022-12-29 18:29:28 +01:00
Jan Bouwhuis
4335b0db25
Clean up or correct from removed deprecation for MQTT platform ( #82684 )
...
Clean up or correct from removed deprecation
2022-11-25 16:11:22 +01:00
Jan Bouwhuis
7c2e7863d2
Remove legacy YAML support from MQTT ( #82102 )
2022-11-17 22:55:31 +01:00
Jan Bouwhuis
9a4c8f5f0e
Refactor common MQTT tests to use modern schema ( #77583 )
...
* Common tests availability
* Common tests attributes
* Common tests unique id
* Common tests discovery
* Common tests encoding
* Common tests device info
* Common tests entity_id updated
* Common tests entity debug info
* Common test entity category
* Common tests setup reload unload+corrections
* Cleanup sweep
* Comments from curent change
* Cleanup
* Remove unused legacy config
2022-09-09 11:15:48 +02:00
Jan Bouwhuis
13188a5c63
Refactor MQTT tests to use modern platform schema part 2 ( #77525 )
...
* Tests light json
* Tests light template
* Missed test light json
* Tests light
* Tests lock
* Tests number
* Tests scene
* Tests select
* Tests sensor
* Tests siren
* Tests state vacuuum
* Tests switch
* Derive DEFAULT_CONFIG_LEGACY from DEFAULT_CONFIG
* Suggested comment changes
2022-09-06 11:03:02 +02:00
Erik Montnemery
c55505b47b
Use mock_restore_cache in mqtt tests ( #77297 )
2022-08-25 09:27:38 +02:00
Erik Montnemery
73001e29ff
Remove deprecated white_value support from MQTT light ( #76848 )
...
* Remove deprecated white_value support from MQTT light
* Remove deprecated white_value support from MQTT JSON light
* Remove deprecated white_value support from MQTT template light
2022-08-16 16:47:21 +02:00
Jan Bouwhuis
5930f056a8
Mqtt support config_entry unload ( #70149 )
...
* squashed commits for rebase
* Flake
* Fix reloading issue manual legacy items
* Improve ACS sync for unsubscribe at disconnect
* Processed review comments
* Update homeassistant/components/mqtt/client.py
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* No need to await entry setup
* Remove complication is_connected
* Update homeassistant/components/mqtt/__init__.py
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2022-07-12 11:07:18 +02:00
J. Nick Koston
51b4d15c8c
Speed up mqtt tests ( #73423 )
...
Co-authored-by: jbouwh <jan@jbsoft.nl>
Co-authored-by: Jan Bouwhuis <jbouwh@users.noreply.github.com>
2022-06-13 10:17:10 -10:00
Jan Bouwhuis
657e7f9a4c
Simplify MQTT test for setup manual mqtt item from yaml ( #72916 )
...
simplify test setup manual mqtt item from yaml
2022-06-13 13:44:12 +02:00
Jan Bouwhuis
52561ce076
Update MQTT tests to use the config entry setup ( #72373 )
...
* New testframework and tests for fan platform
* Merge test_common_new to test_common
* Add alarm_control_panel
* Add binary_sensor
* Add button
* Add camera
* Add climate
* Add config_flow
* Add cover
* Add device_tracker_disovery
* Add device_trigger
* Add diagnostics
* Add discovery
* Add humidifier
* Add init
* Add lecacy_vacuum
* Add light_json
* Add light_template
* Add light
* Add lock
* Add number
* Add scene
* Add select
* Add sensor
* Add siren
* Add state_vacuum
* Add subscription
* Add switch
* Add tag
* Add trigger
* Add missed tests
* Add another missed test
* Add device_tracker
* Remove commented out code
* Correct tests according comments
* Improve mqtt_mock_entry and recover tests
* Split fixtures with and without yaml setup
* Update fixtures manual_mqtt
* Update fixtures mqtt_json
* Fix test tasmota
* Update fixture mqtt_room
* Revert fixture changes, improve test
* re-add test
2022-06-02 14:24:46 +02:00
Jan Bouwhuis
ed1c2ea2b8
Move manual configuration of MQTT fan and light to the integration key ( #71676 )
...
* Processing yaml config through entry setup
* Setup all platforms
* Update homeassistant/components/mqtt/__init__.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* adjust mock_mqtt - reference config from cache
* Fix test config entry override
* Add tests yaml setup
* additional tests
* Introduce PLATFORM_SCHEMA_MODERN
* recover temporary MQTT_BASE_PLATFORM_SCHEMA
* Allow extra key in light base schema, restore test
* Fix test for exception on platform key
* One deprecation message per platform
* Remove deprecation checks from modern schema
* Update homeassistant/components/mqtt/fan.py
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* Update homeassistant/components/mqtt/fan.py
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* Update homeassistant/components/mqtt/light/__init__.py
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* Update homeassistant/components/mqtt/light/__init__.py
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* Update homeassistant/components/mqtt/light/schema_json.py
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* Update homeassistant/components/mqtt/light/schema_template.py
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* Update homeassistant/components/mqtt/mixins.py
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* rename validate_modern_schema
* Do not fail platform if a single config is broken
* Update homeassistant/components/mqtt/__init__.py
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* Fix tests on asserting log
* Update log. Make helper transparant, remove patch
* Perform parallel processing
* Update tests/components/mqtt/test_init.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Apply suggestions from code review
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update homeassistant/components/mqtt/mixins.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* black
* Fix tests and add #new_format anchor
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2022-05-19 15:04:53 +02:00
Mike Degatano
a51d9012ad
Fix MQTT lights tests using `STATE_OFF` ( #67011 )
2022-02-21 22:52:31 -08:00
rubenverhoef
95de1dd446
Additional MQTT light command templates ( #63361 )
...
Co-authored-by: jbouwh <jan@jbsoft.nl>
2022-02-22 00:00:49 +01:00
Erik Montnemery
fe38e6ba87
Drop MQTT import flow ( #66160 )
...
* Drop MQTT import flow
* Reload manually configured MQTT entities when config entry is setup
* Address review comments
* Actually remove the import flow
2022-02-10 21:09:57 +01:00
Erik Montnemery
8245ff7473
Log transmitted MQTT messages ( #65550 )
2022-02-04 17:35:32 +01:00
Jan Bouwhuis
cf52357229
Add MQTT light unknown state support ( #65308 )
...
* Add MQTT light unknown sate support
* Update homeassistant/components/mqtt/light/schema_basic.py
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* Update homeassistant/components/mqtt/light/schema_json.py
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* Update homeassistant/components/mqtt/light/schema_template.py
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* Update tests for default unknown state
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2022-02-03 16:49:57 +01:00
Erik Montnemery
1995a825f3
Reject MQTT light discovery using unsupported value_template ( #62682 )
...
* Reject MQTT light discovery using unsupported value_template
* Tweak
2022-01-03 17:16:26 +01:00
Jan Bouwhuis
dd0193052c
Add MQTT encoding parameter for all subscribed topics ( #62263 )
...
* Add encoding parameter for all subscribable topics
* test setup encoding incoming payload
* remove support for device_tracker and tag+tests
2022-01-03 16:08:07 +01:00
Jan Bouwhuis
061ce0c187
Fix mqtt reloading and rework tests ( #62950 )
...
* Improve mqtt reloading/tests and fix issues
* Cleanup fixture for reloading test
* isort and black remove replaced test_reloadable
2022-01-03 15:14:50 +01:00
Jan Bouwhuis
d0c4f0fec4
Add mqtt encoding support for publishing ( #62739 )
...
* encoding support for mqtt publishing - todo tests
* signature allows None values for qos and retain
* common test for mqtt publishing encoding
* better test with command templates
* more tests
* fix tests alarm control panel+tests light basic
* tests light json and template
* add tests vacuum and fix tests light_template
2022-01-03 09:03:47 +01:00
Paulus Schoutsen
31153ac155
Move fixtures part 1 ( #58902 )
2021-11-01 20:47:05 -07:00
Erik Montnemery
640a7fee9d
Allow extra keys in MQTT discovery messages ( #58390 )
...
* Allow extra keys in MQTT discovery messages
* Remove extra keys
2021-10-25 13:47:06 +02:00
Paulus Schoutsen
a4d9019ffc
Refactor persistent notification to no longer route all data via a service ( #57157 )
...
* Convert persistent notification tests to async
* Create/dismiss persistent notifications in exposed functions, not service calls
* Fix notify persistent_notification
* Remove setting up persistent_notification
* Drop more setups
* Empty methods
* Undeprecate sync methods because too big task
* Fix setup clearing notifications
* Fix a bunch of tests
* Fix more tests
* Uno mas
* Test persistent notification events
* Clean up stale comment
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-10-07 12:58:00 +02:00
J. Nick Koston
e6e8d7eded
Convert color temperature to visible color in lights ( #55219 )
2021-08-25 21:56:36 +02:00
Erik Montnemery
7a4f3fe7b8
Filter MQTT light JSON attributes ( #52242 )
2021-06-28 14:37:26 +02:00
Erik Montnemery
52c142a82d
Add support for color_mode white to MQTT light basic schema ( #51484 )
...
* Add support for color_mode white to MQTT light basic schema
* Add missing abbreviations
2021-06-22 11:59:20 +02:00
Erik Montnemery
a4587b5f3b
Deprecate support for undocumented value_template in MQTT light ( #51589 )
2021-06-08 08:23:51 +02:00
Erik Montnemery
870c61a622
Add color_mode support to MQTT light with basic schema ( #50464 )
...
* Add color_mode support to MQTT light with basic schema
* Update abbreviations
* Silence pylint
* Improve test coverage
* Apply suggestions from code review
2021-05-24 11:37:02 +02:00