* Add proper percentage support to deCONZ fan integration
* Properly convert speed to percentage
* Remove disabled method
* Replace convert_speed with a dict
* update pypoint to 2.1.0
* Add properties and device_classes to constant
* Fix unique_ids for binary_sensors
* Update device icon
* Fallback to device_class icon.
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* Just use known events
* Use DEVICE_CLASS_SOUND
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* Increase test coverage of deCONZ device triggers
* Revert removed new line
* Found a way to explicitly assert that exceptions are raised
* Remove unnecessary block till done
* Fix unnecessary elif
* Fix review comments
* Remove helper tests
* Remove login details before logging stream source
* Convert to str before re
* Use compiled RE
* Add tests and filter log message in worker
* Update import
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* isort
Co-authored-by: Erik Montnemery <erik@montnemery.com>
maxcube-api dependency now supports using None as the
target temperature: in that case, it uses the scheduled
temperature in auto mode and current temperature in all
other modes.
We will use that feature when changing hvac_mode to auto and
selecting PRESET_NONE.
* ScreenLogic cleanup.
Bump screenlogicpy to 0.2.0.
Move heating functions from water_heater to climate platform.
Address notes from original PR.
* Fix temperature attribute
* Addressing notes.
Bump screenlogicpy to 0.2.1.
Made device_types constants.
Made (known) equipment flags constants.
Used dict.get() in places where None is the default.
Return fast with good _last_preset.
* Update homeassistant/components/screenlogic/climate.py
Let base entity handle state property.
Co-authored-by: J. Nick Koston <nick@koston.org>
* Patch integration setup functions.
* Exception, ATTR_TEMPERATURE notes
Co-authored-by: J. Nick Koston <nick@koston.org>
* Added handle_event for set_level command in dimmable devices
* refactor common code for dimmable devices
* Force tests
Silly change to force tests execution
* fix super()
* add rflink dim utils
* Improve uvc test camera
* Clean setup full config
* Clean setup partial config
* Set more camera defaults
* Clean setup partial config v31x
* Clean setup incomplete config
* Clean setup nvr errors during indexing
* Clean setup nvr errors during initialization
* Clean properties
* Fix motion recording mode properties
* Clean stream
* Clean login
* Clean login v31x
* Clean login tries both addres and caches
* Clean login fails both properly
* Remove not needed test
* Clean camera image error
* Test snapshot login retry
* Clean up
* Test enable and disable motion detection
* Times must be UTC
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Better status control on restore
* Better status control on restore
* fix code coverage
* Rollback hvac_mode initialization
I think I have better understood the handling of the `hvac_mode`.
I change the approach. Now the thermostat doesn't initialize until the switch is available.
* fix pyupgrade
* fix black
* Delete test_turn_on_while_restarting
HVAC mode should not be modified by the switch.
IMHO, this test does not make sense because if the switch is turned on the thermostat is not turning on (and not changing HVAC_MODE)
* Re add turn off if HVAC is off
If HVAC_MODE is off thermostat will not control heater switch. This can be because `initial_hvac_mode`, because state defaults to or because old_state.
IMHO it is preferable to be excessively cautious.
* Update climate.py
* Change warning message
* Fix black
* Fix black
* Add tests for Netatmo light
* Improve docstring
* Register the camera data class for the light platform
* Remove freezegun dependency
* Update tests
* Update tests/components/netatmo/test_light.py
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* Deduplicate webhook test data
* Mock pytest to verify it is called
* Don't test internals
* Rename
* Assert light still on with erroneous event data
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* Add definitions for grouping media players
See https://github.com/home-assistant/architecture/issues/364
* Fix Google Assistant tests
* Define sync versions of async_join_players/async_unjoin
* Don't use async API in synchronous test methods
* Fix tests and make pylint happy
The method name `unjoin` is used by another component, so let's use
`unjoin_player` instead.
* Fix emulated_hue tests
The new media player entity in the `demo` component requires a tiny
adjustment in the emulated_hue tests.
* Use "target:" in service description
* Also use "name:" in service descriptions
Co-authored-by: Franck Nijhof <git@frenck.dev>