* Add sensor as entity platform on MQTT subentries
* Fix typo
* Improve device class data description
* Tweak
* Rework reconfig calculation
* Filter out last_reset_value_template if state class is not total
* Collapse expire after as advanced setting
* Update suggested_display_precision translation strings
* Make options and last_reset_template conditional, use sections for advanced settings
* Ensure options are removed properly
* Improve sensor options label, ensure UOM is set when device class has units
* Use helper to apply suggested values from component config
* Rename to `Add option`
* Fix schema builder not hiding empty sections and removing fields excluded from reconfig
* Do not hide advanced settings if values are available or are defaults
* Improve spelling and Learn more links
* Improve unit of measurement validation
* Fix UOM selector and translation strings
* Address comments from code review
* Remove stale comment
* Rename selector constant, split validator
* Simplify config validator
* Return tuple with config and errors for config validation
* Add initial MQTT subentry support for notify entities
* Fix componts assigment is reset on device config. Translation tweaks
* Rephrase
* Go to summary menu when components are set up already - add test
* Fix suggested device info on config flow
* Invert
* Simplify subentry config flow and omit menu
* Use constants instead of literals
* More constants
* Teak some translations
* Only show save when the the entry is dirty
* Do not trigger an entry reload twice
* Remove encoding, entity_category
* Remove icon from mqtt subentry flow
* Separate entity settings and MQTT specific settings
* Remove object_id and refactor
* Migrate translations
* Make subconfig flow test extensible
* Make sub reconfig flow tests extensible
* Rename entity_platform_config step to mqtt_platform_config
* Make component unique ID independent from the name
* Move code for update of component data to helper
* Follow up on code review
* Skip dirty stuff
* Fix rebase issues #1
* Do not allow reconfig for entity platform/name, default QoS and refactor tests
* Add entity platform and entity name label to basic entity config dialog
* Rename to exclude_from_reconfig and make reconfig option not optional
* Move entry options to entry.options en remove broker setup from mqtt option flow
* UPdate diagnostics to export both entry data and options
* Parameterize entry options directly not depending on migration
* Update tests to use v2 entry and add separate migration test
* use start_reconfigure_flow helper
* Update quality scale comment
* Do minor entry upgrade, and do not force to upgrade entry
* Ensure options are read from older entries
* Add comment
* Follow up on code review
* Assert config entry version checking the broker connection
* Update comment
* Add reconfigure flow for MQTT integration
* Add test and translation strings
* Update quality scale configuration
* Do not cache ConfigEntry in flow
* Make sorce condition explictit
* Rework from suggested changes
* Do not allow reconfigure_entry and reconfigure_entry_data to be `None`
* Move set addon options to aiohasupervisor
* addon stats to aiohasupervisor and test fixes
* addon changelogs to aiohasupervisor
* Raise correct error for library in tests
* Cache client in instance property
* Use singleton method rather then HassIO instance method
* Mock supervisor client in more tests
* Opt in to install Mosquitto broker add-on in MQTT config flow
* rephrase
* Tests with supervisor and running add-on
* Complete tests for success flows
* Also set up entry in success flow
* Use realistic names for addon and broker
* Finetuning and fail test cases
* Spelling
* Improve translation strings
* Update addon docstr
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* Raise AddonError if add-on does not start
* Only show the option to use the add-on
* Simplify flow, rework and cleanup
* Revert unrelated cleanup, process suggestion
* Move ADDON_SLUG const to addon module
* Move fixture to component level
* Move back supervisor fixture
* Move addon_setup_time_fixture and superfixe to config flow model tests
* Refactor hassio fixture
* Rename helpers as they are no fixtures, remove fixture from their names
---------
Co-authored-by: Erik Montnemery <erik@montnemery.com>
Co-authored-by: Sid <27780930+autinerd@users.noreply.github.com>
Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>
Co-authored-by: J. Nick Koston <nick@koston.org>
* Shared fixture on TEMP_DIR_NAME mock in MQTT tests
* Improve mqtt certificate file tests
* Update tests/components/mqtt/test_util.py
Co-authored-by: J. Nick Koston <nick@koston.org>
* Update tests/components/mqtt/conftest.py
Co-authored-by: J. Nick Koston <nick@koston.org>
* Avoid blocking code
* typo in sub function
---------
Co-authored-by: J. Nick Koston <nick@koston.org>
* Cleanup config merging and adding defaults
* Optimize and update tests
* Do not mix entry and yaml config
* Make sure hass.data is initilized
* remove check on get_mqtt_data
* Tweaks to MQTT client
* Remove None assigment mqtt client and fix mock
* Remove async_setup from mqtt integration
* Final update common tests
* Related tests init
* Related tests diagnostics
* Related tests config_flow
* Cleanup and correct test
* Keep websockets_api commands in async_setup
* 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