Commit Graph

253 Commits (aa50096a318ca8b90981ece63317bfdc839be714)

Author SHA1 Message Date
Robert Svensson 311e0e4185
Last minute tweaks to deCONZ alarm panel entity service(#49819)
Text for entry and exit delay was wrong
Remove functions that need a bit more investigating
2021-04-28 18:54:53 +02:00
Robert Svensson 58ad3b61f7
Entities for secondary temperature values created by certain Xiaomi devices in deCONZ (#49724)
* Create sensors for secondary temperature values created by certain Xiaomi devices

* Fix tests
2021-04-27 08:43:06 +02:00
Ville Skyttä 153d6e891e
Use config_entries.SOURCE_* constants (#49631) 2021-04-25 11:27:40 +02:00
Robert Svensson b0fecdcc3d
Add entity service for deCONZ alarm control panel to control states used to help guide user transition between primary states (#49606) 2021-04-24 15:46:16 +02:00
Robert Svensson 34245c3add
Add alarm control panel support to deCONZ integration (#48736)
* Infrastructure in place

* Base implementation

* Add alarm event

* Add custom services to alarm control panel

* Add service descriptions

* Increase test coverage

* Simplified to one entity service with an options selector

* Remove everything but the essentials

* Add library with proper support

* Fix stale comments
2021-04-20 17:34:11 +02:00
Robert Svensson c80f34a754
Add support for ZHADoorLock locks to deCONZ integration(#48516) 2021-03-31 09:36:06 +02:00
Franck Nijhof 52475c108f
Make integration setup optional (#48381) 2021-03-29 13:53:47 -07:00
Robert Svensson 70d9e8a582
Add proper percentage support to deCONZ fan integration (#48187)
* Add proper percentage support to deCONZ fan integration

* Properly convert speed to percentage

* Remove disabled method

* Replace convert_speed with a dict
2021-03-23 22:29:55 +01:00
Robert Svensson 1095d93892
Increase test coverage of deCONZ device triggers (#48126)
* 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
2021-03-23 13:49:44 +01:00
Robert Svensson 863f75e65e
Improve test coverage of deconz_device (#48141) 2021-03-20 14:22:01 +01:00
Robert Svensson 24e067782a
Improve sensor coverage by verifying daylight sensor attributes (#48090) 2021-03-19 16:51:44 +01:00
Robert Svensson fa5ce70af1
Improve test coverage of deCONZ config flow (#48091) 2021-03-19 13:37:22 +01:00
Marc Mueller 54d1e9985f
Update typing 15 (#48079) 2021-03-18 15:13:22 +01:00
Robert Svensson 8b8a54b367
Improve deCONZ services and scenes tests (#47829)
Use patch.dict rather than deep copy to change DECONZ_WEB_REQUEST
2021-03-18 11:57:56 +01:00
Robert Svensson ad5dbebc03
Use websocket fixture in deCONZ switch tests (#47831)
Localize test data
Improve asserts
2021-03-18 11:44:52 +01:00
Robert Svensson a4b2dff58d
Use websocket fixture in deCONZ sensor tests (#47830)
Localize test data
Improve asserts
2021-03-18 11:41:27 +01:00
Robert Svensson a21d0cadf8
Use websocket fixture in deCONZ lock tests (#47827)
Localize test data
Improve asserts
2021-03-18 11:06:44 +01:00
Robert Svensson 3f2d3bd1b2
Use websocket fixture in deCONZ light tests (#47826)
Localize test data
Improve asserts#
2021-03-18 11:01:32 +01:00
Robert Svensson 7350215b4e
Use websocket fixture in deCONZ fan tests (#47824)
Localize test data
Improve asserts
2021-03-18 10:49:48 +01:00
Robert Svensson 7ff9610e67
Use websocket fixture in deCONZ event related tests (#47823)
Localize test data
Improve asserts
2021-03-18 10:44:31 +01:00
Robert Svensson a57d340037
Use websocket fixture in deCONZ cover tests (#47822)
Localize test data
Improve asserts
2021-03-18 10:07:11 +01:00
Robert Svensson 2ab640aaef
Use websocket fixture in deCONZ climate tests (#47821)
Localize test data
Improve asserts
2021-03-18 09:57:27 +01:00
Robert Svensson 333f5da036
Use websocket fixture in deCONZ binary sensor tests (#47820)
Localize test data
Improve asserts
2021-03-18 09:51:42 +01:00
Robert Svensson 786cbcc1d6
Introduction of deCONZ websocket fixture (#47812) 2021-03-12 12:03:29 -08:00
Robert Svensson 6b03c8d126
Improve deCONZ init tests (#47825)
Use patch.dict rather than deep copy to change DECONZ_WEB_REQUEST
2021-03-12 12:02:15 -08:00
Erik Montnemery 87e7cebd36
Update tests c-h to use registry async_get (#47652) 2021-03-09 14:31:17 +01:00
Ville Skyttä dc880118a4
Lint suppression cleanups (#47248)
* Unused pylint suppression cleanups

* Remove outdated pylint bug references

* Add flake8-noqa config and note to run it every now and then

* Add codes to noqa's

* Unused noqa cleanups
2021-03-02 09:02:04 +01:00
Robert Svensson 6b0c569a70
Normally there should only be one battery sensor per device from deCONZ. (#46761)
With these Danfoss devices each endpoint can report its own battery state.
2021-02-25 09:54:46 +01:00
Jan-Willem Mulder 75b37b4c2a
Expose locked attribute in deCONZ climate platform (#46814) 2021-02-22 07:53:58 +01:00
Robert Svensson 20f45f8ab9
Improve deCONZ tests by using aioclient_mock rather than patching web requests (#45927)
* Don't patch web requests, use aioclient_mock instead

* Remove stale prints

* Remove tests for old way of loading platforms

* Remove unused imports
2021-02-09 08:31:29 +01:00
Paulus Schoutsen 9e07910ab0
Mark entities as unavailable when they are removed but are still registered (#45528)
* Mark entities as unavailable when they are removed but are still registered

* Add sync_entity_lifecycle to collection helper

* Remove debug print

* Lint

* Fix tests

* Fix tests

* Update zha

* Update zone

* Fix tests

* Update hyperion

* Update rfxtrx

* Fix tests

* Pass force_remove=True from integrations

Co-authored-by: Erik <erik@montnemery.com>
2021-02-08 10:45:46 +01:00
Robert Svensson 60e3fce7dc
Convert old deCONZ groups unique ids (#46093)
* Convert old groups unique ids
Work around for walrus operator not working properly :/

* Remove CONF_GROUP_ID_BASE once entities unique id are updated

* Don't use migrate_entry mechanism to update unique_ids of groups

* Remove walrus operator :(

* Fix review comments

* Walrusify assignment to old_unique_id
2021-02-06 14:32:17 +01:00
Robert Svensson 434b4dfa58
Improve deCONZ logbook to be more robust in different situations (#46063) 2021-02-05 23:07:12 +01:00
Robert Svensson 622906965d
Add better message to deCONZ event logbook when information is available (#45545)
* Add better message when information is available

* Fix pylint
2021-01-26 08:15:39 +01:00
Robert Svensson 22a6e55e70
Base deCONZ group supported features on the sum of all its lights (#45440) 2021-01-22 23:39:34 +01:00
Robert Svensson 57fa7f926a
Introduce reauth flow to deCONZ (#45443) 2021-01-22 23:37:16 +01:00
Robert Svensson 18c7ae9a8b
Fix hs_color crashing when activating scenes in deCONZ on color_temp lights (#45159) 2021-01-22 22:40:22 +01:00
Robert Svensson aaf4cd4a25
Basic logbook support for deCONZ events (#45400)
* Basic logbook support

* Improve formulation of message

* Improve typing
2021-01-22 22:39:11 +01:00
Franck Nijhof 65cf2fcb6f
Drop asynctest (#44746) 2021-01-01 22:31:56 +01:00
Robert Svensson e2ef9d1afc
Some lights only support hs, like the lidl christmas lights (#44059) 2020-12-09 19:02:44 +01:00
Robert Svensson bc83e30761
Fix device refresh service can always add devices (#43950) 2020-12-05 11:53:43 +01:00
Robert Svensson a8f0ad1dd8
Allow creating deCONZ config entry even when no bridge id is available 2020-12-02 19:10:47 +01:00
Robert Svensson 6e8efe2b67
Add fan support to deCONZ climate platform (#43721) 2020-12-02 18:08:46 +01:00
Robert Svensson 25db1dac23
Add preset support to deCONZ climate platform (#43722) 2020-12-02 17:14:05 +01:00
Robert Svensson 1faef0a4d4
Make simple deCONZ thermostats work (#43781) 2020-12-01 18:49:58 +01:00
Robert Svensson 6fa3e287da
Add support to control cooling in deCONZ climate platform (#43720)
* Add fan support

* Add HVAC cool support

* Fix Martins comment from #43607

* Add preset support

* Improve climate test coverage

* Remove fan support

* Remove preset support

* Remove last preset piece
2020-11-28 13:11:13 +01:00
Paulus Schoutsen b3be708db6
Add default config if not there (#43321)
Co-authored-by: Bram Kragten <mail@bramkragten.nl>
2020-11-25 15:10:04 +01:00
Robert Svensson acb94b0b59
Add tilt support to deCONZ covers (#43607) 2020-11-24 21:42:11 +01:00
Robert Svensson 7214d6517a
Fix conversion of cover position between HASS and deCONZ (#43602) 2020-11-24 14:47:56 +01:00
Robert Svensson 55cbd5aa0d
Track deCONZ lib changes to light based devices (#43366)
* Improve control of covers

* Log backtrace if available

* Do not create entity for controller tool
Binary sensor should use state rather than is_tripped
Add some more tests to lights and sensors

* Bump dependency to v74

* Fix Balloobs comments
2020-11-23 11:37:11 +01:00
Robert Svensson ffe0c1cd58
Add device id to deconz_event (#43552) 2020-11-23 09:22:44 +01:00
Paulus Schoutsen 5dac3883b0
Stub light profiles (#42232) 2020-10-23 16:28:21 +02:00
Robert Svensson c6c617ed31
Improve device registry for host and deCONZ service (#41786) 2020-10-17 11:44:23 -05:00
Robert Svensson 7eb532ddd0
Improve imports in deCONZ tests (#41976)
* Improve imports in deconz tests

* Add spacing
2020-10-17 11:20:06 -05:00
Robert Svensson 85ccff28cd
Revert partial changes to deCONZ integration from earlier PR (#41943) 2020-10-16 14:38:12 +02:00
Robert Svensson cb6d3b590e
Revert device trigger modelid for Trådfri remotes for deCONZ (#41843) 2020-10-14 23:39:00 +02:00
Robert Svensson dc71b7421c
Improve deCONZ climate platform handling unsupported commands (#41780)
* Improve deCONZ climate platform

* Raise valueerror if missing input

* Fix linting
2020-10-13 22:11:09 +02:00
Robert Svensson 267d97e80e
Improve deCONZ fan platform handling unsupported commands (#41779)
* Improve handling unsupported commands

* Raise valueerror on unsupported speed

* Fix linting
2020-10-13 19:34:33 +02:00
Robert Svensson 72289b8171
Add fan support to deCONZ (#40806)
* Add fan support to deconz

* Fix gateway test

* Fix lint issue

* Apply suggestions from code review

* Fix black

* Improve tests

* Store previously used speed in case turn_on service is called without a speed attribute

* Fix tests

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-10-13 12:57:42 +02:00
Ville Skyttä 66aa55dddf
Fix deCONZ IKEA TRÅDFRI device name spelling (#41574) 2020-10-10 13:04:00 +02:00
Robert Svensson cbb4324c84
Refactor deCONZ tests (#41362)
* Use hass.config_entries.async_unload

* Return config_entry from setup_deconz_integration
2020-10-06 23:25:57 +02:00
Robert Svensson 552856203b
Clean deCONZ tests to depend less on integration code (#41015) 2020-10-02 11:20:33 +02:00
Robert Svensson 9116061262
Add lock support to deCONZ (#40807)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-10-01 09:50:06 +02:00
Robert Svensson 2922d4675f
Abort deCONZ config flow if no radio hardware is connected (#40811) 2020-10-01 09:23:12 +02:00
Robert Svensson 9d56d3bb31
Add deCONZ service to clean up orphaned device and entity entries (#40629)
* Add service that can clean up by deCONZ orphaned entries from device and entity registry

* Fix existing tests

* Add new test

* Add some inline comment to the service
2020-09-30 20:11:41 +02:00
Robert Svensson 7e58bfe01d
Add deconz option to disable automatic addition of new devices (#40545)
* Allow disabling automatic additions of new devices from deconz

* Fix black

* Fix review comment

* Remove assertion

* Verify entity registry is empty
2020-09-29 11:07:19 +02:00
Robert Svensson 66a8edb11e
deCONZ fix comments from #40265 (#40640)
* Use set not list

* Events are not entities

* Don't await unload_events

* Remove checks of entities content in tests

* List to set comprehension

* Why is it so hard to remember that sets arent parenthesis...
2020-09-27 11:02:45 +02:00
Robert Svensson 203c556ba3
Improve tracking of existing entities in deconz (#40265)
* Store all entities in dict

* Use stored unique id to select if to create entity or not

* Remove unnecessary init

* Change so same physical sensor doesnt try to create multiple battery sensors
Change so groups get created properly

* Add controls in tests that entities are logged correctly
2020-09-25 22:49:28 +02:00
springstan 6a7caad8dc
Use content type json constant (#40312) 2020-09-23 20:21:55 +02:00
Dan Klaffenbach 74cef6966d
Expose angle and xy attributes in deCONZ event if present (#39822)
These attribute are used by the color wheel on the Müller Licht tint
remote control.
2020-09-15 21:13:17 +02:00
Robert Svensson ceeea52915
Improve handling of mireds being far out of spec (#40018) 2020-09-13 16:31:39 +02:00
Paulus Schoutsen 6de02fc1b9
Fix some more usages of asynctest (#39570) 2020-09-02 14:53:07 +02:00
Franck Nijhof 1c2ebdf307
Upgrade black to 20.8b1 (#39287) 2020-08-27 13:56:20 +02:00
J. Nick Koston 74c23c3e96
Add support for reload_on_update to _abort_if_unique_id_configured (#38638)
* Add support for reload_on_update to _abort_if_unique_id_configured

async_update_entry now avoids firing update listeners and writing
the storage if there are no actual changes.

* Actually add the tests

* collapse branch

* Update homeassistant/config_entries.py

Co-authored-by: Franck Nijhof <git@frenck.dev>

* handle entries that lack the ability to reload

* reduce

* adjust konnected tests

* update axis tests

* fix blocking

* more mocking

* config flow tests outside of test_config_flow

* reduce

* volumio

* Update homeassistant/config_entries.py

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>

* set reload_on_update=False for integrations that implement self._abort_if_unique_id_configured(updates= and a reload listen

* get rid of copy

* revert test change

Co-authored-by: Franck Nijhof <git@frenck.dev>
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-08-08 13:23:56 -05:00
Robert Svensson 37f7d262d7
Change deCONZ sensor device classes (#36352)
* Change vibration type to vibration instead of motion

* Also replace icon and unit of measurement
2020-06-02 16:17:21 +02:00
Robert Svensson a6e9a312a3
deCONZ - Don't send off signals to light if already off (#36357) 2020-06-02 00:20:52 +02:00
Robert Svensson 07469127ce
deCONZ - Add support for max/min mireds (#36355)
* Add support for max/min mireds reported per light from deconz .77

* Bump dependency
2020-06-01 23:48:18 +02:00
Carlos Giraldo d02bb70f0c
deCONZ - Add support for "Window covering controller" (#35294)
* Add support for "Window covering controller" 

Some window cover devices such as Sunricher SR-ZG9080A are identified in deconz as "Window covering controller".
We need to include this device type in const.py to be integrated as type "cover" in home-assistant.

* Added Window covering controller to deconz tests
2020-05-17 09:57:24 +02:00
Paulus Schoutsen ec47216388
Use built-in test helpers on 3.8 (#34901) 2020-04-30 13:29:50 -07:00
Robert Svensson 4484afc0d6
deCONZ - Always allow manual input of gateway (#33951)
* Always allow manual input of gateway
2020-04-17 23:51:35 +02:00
Franck Nijhof 98a2efcbab
Collection of random (mainly) test improvements (#33733) 2020-04-06 12:51:48 +02:00
Knapoc 7ec7306ea8
Update deconz/cover.py to adapt rest-api changes (#32351)
* Update cover.py to adapt rest-api changes

* adjust test to reflect max brightness changes

* implement test for rest-api cover position of 255
2020-03-16 15:44:59 +01:00
Robert Svensson a745134128
deConz - Use proper mechanisms for options flow tests (#31965)
Generic clean up
2020-02-18 23:52:56 +01:00
Robert Svensson b5df2ba853
deCONZ - Directly reflect changes to config entry options (#31661)
* Directly reflect changes to config entry options

* Remove print

* Add tests

* Add title to config options
2020-02-18 13:24:25 -08:00
Robert Svensson 883b8f21ce
deCONZ - Library cleanup (#31410)
* Follow library changes

* Bump dependency to v70

* Fix test
2020-02-02 19:07:20 +01:00
FrengerH 704cfcf235
deCONZ - Fix magic cube awake gesture (#31403) 2020-02-02 12:54:59 +01:00
Robert Svensson b373c202c9
deCONZ - Add support for new switch type (#31362) 2020-02-01 17:08:49 +01:00
Robert Svensson 111fc1fa8e
Use all new helper functions (#31278) 2020-01-29 16:21:23 -08:00
Robert Svensson 7b29a498c6 Fix issue with group unique id when normalising bridge id (#30904) 2020-01-17 15:28:34 -08:00
Robert Svensson d883ee62f8 deCONZ - Disable daylight sensor by default (#30625)
* Dont enable daylight sensor by default

* Fix tests
2020-01-10 19:57:08 +01:00
Robert Svensson 84a1afc785
deCONZ - Fix device automations (#30577) 2020-01-08 10:06:33 +01:00
Paulus Schoutsen 9aa02e35a7
Entity Component to no longer generate automatic groups (#23789) 2020-01-07 17:30:53 +01:00
FrengerH 0d1da9f5cb deCONZ - Rotation support for Xiaomi magic cube (#30472)
* Added rotation to deconz magic cube event

* Device trigger support
2020-01-06 12:34:27 +01:00
Robert Svensson 967fe89f6d deCONZ - Allow manual configuration to update existing configuration (#30469)
* Allow manual configuration to update existing configuration

* Harmonize tests
2020-01-04 22:55:57 +01:00
Robert Svensson ec61342ec3
deCONZ - Improve tests based on Martins feedback in Axis integration (#30438) 2020-01-03 18:11:04 +01:00
Jc2k fdfedd086b Rework FlowManager to use inheritance (#30133)
* Pull async_finish_flow/async_create_flow out of ConfigEntries

* Towards refactoring

* mypy fixes

* Mark Flow manager with abc.* annotations

* Flake8 fixes

* Mypy fixes

* Blacken data_entry_flow

* Blacken longer signatures caused by mypy changes

* test fixes

* Test fixes

* Fix typo

* Avoid protected member lint (W0212) in config_entries

* More protected member fixes

* Missing await
2020-01-03 11:52:01 +01:00
Robert Svensson 0a4f3ec1ec Use config entry unique id for deCONZ (#30122)
* Use config entry unique id

* Clean up

* Backwards compatiblity note

* Fix some of Balloobs comments

* Bump dependency to v66

* Black somehow missed config flow tests...

* Move set unique ID til after possibility to update existing entry
2020-01-03 11:50:53 +01:00
Franck Nijhof d101d4449f Fix deconz SSDP updating Hassio discovery (#30153) 2019-12-22 22:24:18 +01:00
Franck Nijhof eb0aed3653
Fix update port and api key on deconz discovery config entry u… (#30088)
* Fix update port and api key on discovery config entry update

* Remove coroutine from _update_entry
2019-12-20 10:29:18 +01:00
Ville Skyttä d236a19139
Include all SSDP data in discovery info (#28197)
* Include all SSDP data in discovery info

* Use UPnP device description as discovery info, inject some SSDP attrs

* Clean up attribute names

* Adapt existing SSDP flows to changed attribute names

* Prefix all SSDP UPnP attribute name constants with ATTR_UPNP, tweak a bit
2019-12-19 19:28:03 +02:00
Bas Nijholt 41cd678f00 Sort imports according to PEP8 for deconz (#29659) 2019-12-09 12:25:35 +01:00
Robert Svensson 57a3f7d5c8
Pass in parameters explicitly to DeconzSession (#29617)
Dont pass in loop to DeconzSession
Services will use new refresh state method
2019-12-08 16:53:34 +01:00
Robert Svensson 557e585e56
deCONZ - Support creating battery sensor when reported (#27538) 2019-11-01 22:31:22 +01:00
Robert Svensson d345b58ce6 Improve UniFi config flow tests and add options flow test (#27340) 2019-10-08 14:44:33 -07:00
Erik Montnemery 3e99743244
Add device trigger support to sensor entities (#27133)
* Add device trigger support to sensor entities

* Fix typing

* Fix tests, add test helper for comparing lists
2019-10-03 06:14:35 +02:00
Robert Svensson d8c6b281b8
deCONZ - Support Symfonisk sound controller with device triggers (#26913)
* Device trigger tests shall use the common gateway mock

* Follow ebaauws clarification of signals

* Fix translations
2019-10-02 22:12:59 +02:00
Robert Svensson cff7fd0ef3
deCONZ - Increase bridge discovery robustness in config flow (#26911) 2019-09-25 21:50:14 +02:00
Robert Svensson 4582b6e668
deCONZ - Improve ssdp discovery by storing uuid in config entry (#26882)
* Improve ssdp discovery by storing uuid in config entry so discovery can update any deconz entry, loaded or not
2019-09-25 18:56:31 +02:00
Paulus Schoutsen 6fdff9ffab
Reorg device automation (#26880)
* async_trigger -> async_attach_trigger

* Reorg device automations

* Update docstrings

* Fix types

* Fix extending schemas
2019-09-24 14:57:05 -07:00
Robert Svensson f5d12669a5 deCONZ improve gateway tests (#26709)
* Improve gateway tests

* Harmonize all tests to use the same gateway initialization method

* Improve scene tests

* Add gateway resync call to platform tests

* Forgot to change switch tests to use common gateway method

* Improve event tests
2019-09-19 14:44:09 -07:00
Robert Svensson 886d8bd6e2 deCONZ rewrite sensor tests (#26679)
* Improve binary sensor tests

* Fix sensor tests

* Improve readability of binary sensor

* Fix climate tests
Fix sensor platform not loading climate devices as sensors

* Add test to verify adding new sensor after start up
2019-09-18 10:07:32 -07:00
Robert Svensson 8a39924b37
deCONZ improve light tests (#26697)
* Improve light tests
* Small improvements on light and group classes
2019-09-18 12:47:26 +02:00
Robert Svensson 5116d02747 deCONZ - Improve service tests (#26663)
* Improve configure service tests

* Add refresh device service test

* Add tests for setup and unload services

* Remove refresh device test from test_init

* Extra verification of deconz services existance in hass.data
2019-09-16 10:08:13 +02:00
Robert Svensson 9c2053a251
deCONZ - Remove mechanisms to import a configuration from configuration.yaml (#26648) 2019-09-14 22:53:59 +02:00
Robert Svensson fb1acfccc9
deCONZ - create deconz_events through sensor platform (#26592)
* Move event creation into sensor platform where it belongs
* Fixed the weird failing test observed during device automation PR
2019-09-14 00:16:37 +02:00
Robert Svensson c680c07c65 deCONZ device automations (#26366)
* Early draft

* Getting there

* Working fully with Hue dimmer remote

* Fix Balloobs comments

* No side effects in constructor

* Improve hue dimmer

* Add Ikea remote control

* Add xiaomi button support

* Refactor getting deconz event

* Added xiaomi devices and tradfri wireless dimmer

* Resolve unique id from device id

* Add Hue Tap and Tradfri on off switch

* More triggers for ikea on off switch and Aqara double wall switch

* Add support for Tradfri open close remote

* Fix changes after rebase

* Initial test

* Change id to event_id

* Fix translations and add subtypes

* Try if tests pass without the new tests

* Revert disabling tests
Add new exception InvalidDeviceAutomationConfig

* Ignore places calling remotes

* Enable all gateway tests

* Found the issue, now to identify which test creates it

* Remove block till done

* See if device automation test passes in azure

* Register event to device registry

* Enable test sensors

* Skip deconz event tests currently failing

* Added reason why skipping tests
2019-09-10 16:56:28 -07:00
Robert Svensson 518d2c31bb deCONZ - use entity registry disabled_by to control available entities (#26219)
* First draft

* Support enabling disabled entities

* Clean up

* Move import

* Local entity enabled replaced during rebase

* Add option flow test

* Mark options properties with option
2019-09-05 16:38:00 -07:00
Robert Svensson d1874d148a
deCONZ - Dont update entry if data is equal 2019-08-31 15:56:43 +02:00
5mauggy 62338dd28e Fix deConz thermostat integration (#26267)
* Fixed logger name to allow selective logging

* Fixed thermostat mode ('off' and 'heat' modes were not consistent with Eurotronic Spirit Zigbee Thermostat state) and added 'auto' to supported mode

* Added required blank lines in code

* Black formatting

* Revert logging code added to each files. Instead, only replaced "." by __package__ in const.py

* Added a test on self._device.state_on to determine hvac_mode

* Black formatting

* Added debug message when unsupported hvac_mode is encountered

* Applied formatting recommandations

* Updated tests for 'auto' hvac_mode
2019-08-30 14:28:39 +02:00
Robert Svensson 1f2e0d3949
deCONZ normalizes cover values to follow zigbee spec (#26240) 2019-08-27 21:06:14 +02:00
Robert Svensson a2589f56e1 Add system options to config entries (#25926)
* Add system options to config entries

* For feedback

* Follow most of balloobs comments

* Fix balloobs comments

* Improvements

* Fix second round of Balloobs comments

* Fix third round

* Add system options to mock config entry

* Fix integration tests

* Fix the last failing tests

* Fix disabled string

* Fix failing disabled_by tests

* New tests

* Config entry WS API tests

* Fix comments
2019-08-17 21:34:11 -07:00
Paulus Schoutsen 6f357cb23e First pass fixing tests that raise exceptions caught by asyncio.gather (#25860)
* First pass fixing tests that raise exceptions caught by asyncio.gather

* Fix demo test

* lint
2019-08-12 16:42:12 +02:00
Nikolay Vasilchuk 8b6ddc22a5 Fix deconz allow_clip_sensor and allow_deconz_groups options (#25811) 2019-08-09 19:31:58 +02:00
Paulus Schoutsen 4de97abc3a Black 2019-07-31 12:25:30 -07:00
Robert Svensson da53e0a836 deCONZ - Add power attribute for consumption sensors (#25512)
* Add power attribute for consumption sensors

* Bump dependency to v62
2019-07-28 18:25:38 +02:00
Pascal Vizeli 84cf76ba36
Climate 1.0 (#23899)
* Climate 1.0 / part 1/2/3

* fix flake

* Lint

* Update Google Assistant

* ambiclimate to climate 1.0 (#24911)

* Fix Alexa

* Lint

* Migrate zhong_hong

* Migrate tuya

* Migrate honeywell to new climate schema (#24257)

* Update one

* Fix model climate v2

* Cleanup p4

* Add comfort hold mode

* Fix old code

* Update homeassistant/components/climate/__init__.py

Co-Authored-By: Paulus Schoutsen <paulus@home-assistant.io>

* Update homeassistant/components/climate/const.py

Co-Authored-By: Paulus Schoutsen <paulus@home-assistant.io>

* First renaming

* Rename operation to hvac for paulus

* Rename hold mode to preset mode

* Cleanup & update comments

* Remove on/off

* Fix supported feature count

* Update services

* Update demo

* Fix tests & use current_hvac

* Update comment

* Fix tests & add typing

* Add more typing

* Update modes

* Fix tests

* Cleanup low/high with range

* Update homematic part 1

* Finish homematic

* Fix lint

* fix hm mapping

* Support simple devices

* convert lcn

* migrate oem

* Fix xs1

* update hive

* update mil

* Update toon

* migrate deconz

* cleanup

* update tesla

* Fix lint

* Fix vera

* Migrate zwave

* Migrate velbus

* Cleanup humity feature

* Cleanup

* Migrate wink

* migrate dyson

* Fix current hvac

* Renaming

* Fix lint

* Migrate tfiac

* migrate tado

* Fix PRESET can be None

* apply PR#23913 from dev

* remove EU component, etc.

* remove EU component, etc.

* ready to test now

* de-linted

* some tweaks

* de-lint

* better handling of edge cases

* delint

* fix set_mode typos

* apply PR#23913 from dev

* remove EU component, etc.

* ready to test now

* de-linted

* some tweaks

* de-lint

* better handling of edge cases

* delint

* fix set_mode typos

* delint, move debug code

* away preset now working

* code tidy-up

* code tidy-up 2

* code tidy-up 3

* address issues #18932, #15063

* address issues #18932, #15063 - 2/2

* refactor MODE_AUTO to MODE_HEAT_COOL and use F not C

* add low/high to set_temp

* add low/high to set_temp 2

* add low/high to set_temp - delint

* run HA scripts

* port changes from PR #24402

* manual rebase

* manual rebase 2

* delint

* minor change

* remove SUPPORT_HVAC_ACTION

* Migrate radiotherm

* Convert touchline

* Migrate flexit

* Migrate nuheat

* Migrate maxcube

* Fix names maxcube const

* Migrate proliphix

* Migrate heatmiser

* Migrate fritzbox

* Migrate opentherm_gw

* Migrate venstar

* Migrate daikin

* Migrate modbus

* Fix elif

* Migrate Homematic IP Cloud to climate-1.0 (#24913)

* hmip climate fix

* Update hvac_mode and preset_mode

* fix lint

* Fix lint

* Migrate generic_thermostat

* Migrate incomfort to new climate schema (#24915)

* initial commit

* Update climate.py

* Migrate eq3btsmart

* Lint

* cleanup PRESET_MANUAL

* Migrate ecobee

* No conditional features

* KNX: Migrate climate component to new climate platform (#24931)

* Migrate climate component

* Remove unused code

* Corrected line length

* Lint

* Lint

* fix tests

* Fix value

* Migrate geniushub to new climate schema (#24191)

* Update one

* Fix model climate v2

* Cleanup p4

* Add comfort hold mode

* Fix old code

* Update homeassistant/components/climate/__init__.py

Co-Authored-By: Paulus Schoutsen <paulus@home-assistant.io>

* Update homeassistant/components/climate/const.py

Co-Authored-By: Paulus Schoutsen <paulus@home-assistant.io>

* First renaming

* Rename operation to hvac for paulus

* Rename hold mode to preset mode

* Cleanup & update comments

* Remove on/off

* Fix supported feature count

* Update services

* Update demo

* Fix tests & use current_hvac

* Update comment

* Fix tests & add typing

* Add more typing

* Update modes

* Fix tests

* Cleanup low/high with range

* Update homematic part 1

* Finish homematic

* Fix lint

* fix hm mapping

* Support simple devices

* convert lcn

* migrate oem

* Fix xs1

* update hive

* update mil

* Update toon

* migrate deconz

* cleanup

* update tesla

* Fix lint

* Fix vera

* Migrate zwave

* Migrate velbus

* Cleanup humity feature

* Cleanup

* Migrate wink

* migrate dyson

* Fix current hvac

* Renaming

* Fix lint

* Migrate tfiac

* migrate tado

* delinted

* delinted

* use latest client

* clean up mappings

* clean up mappings

* add duration to set_temperature

* add duration to set_temperature

* manual rebase

* tweak

* fix regression

* small fix

* fix rebase mixup

* address comments

* finish refactor

* fix regression

* tweak type hints

* delint

* manual rebase

* WIP: Fixes for honeywell migration to climate-1.0 (#24938)

* add type hints

* code tidy-up

* Fixes for incomfort migration to climate-1.0 (#24936)

* delint type hints

* no async unless await

* revert: no async unless await

* revert: no async unless await 2

* delint

* fix typo

* Fix homekit_controller on climate-1.0 (#24948)

* Fix tests on climate-1.0 branch

* As part of climate-1.0, make state return the heating-cooling.current characteristic

* Fixes from review

* lint

* Fix imports

* Migrate stibel_eltron

* Fix lint

* Migrate coolmaster to climate 1.0 (#24967)

* Migrate coolmaster to climate 1.0

* fix lint errors

* More lint fixes

* Fix demo to work with UI

* Migrate spider

* Demo update

* Updated frontend to 20190705.0

* Fix boost mode (#24980)

* Prepare Netatmo for climate 1.0 (#24973)

* Migration Netatmo

* Address comments

* Update climate.py

* Migrate ephember

* Migrate Sensibo

* Implemented review comments (#24942)

* Migrate ESPHome

* Migrate MQTT

* Migrate Nest

* Migrate melissa

* Initial/partial migration of ST

* Migrate ST

* Remove Away mode (#24995)

* Migrate evohome, cache access tokens (#24491)

* add water_heater, add storage - initial commit

* add water_heater, add storage - initial commit

delint

add missing code

desiderata

update honeywell client library & CODEOWNER

add auth_tokens code, refactor & delint

refactor for broker

delint

* Add Broker, Water Heater & Refactor

add missing code

desiderata

* update honeywell client library & CODEOWNER

add auth_tokens code, refactor & delint

refactor for broker

* bugfix - loc_idx may not be 0

more refactor - ensure pure async

more refactoring

appears all r/o attributes are working

tweak precsion, DHW & delint

remove unused code

remove unused code 2

remove unused code, refactor _save_auth_tokens()

* support RoundThermostat

bugfix opmode, switch to util.dt, add until=1h

revert breaking change

* store at_expires as naive UTC

remove debug code

delint

tidy up exception handling

delint

add water_heater, add storage - initial commit

delint

add missing code

desiderata

update honeywell client library & CODEOWNER

add auth_tokens code, refactor & delint

refactor for broker

add water_heater, add storage - initial commit

delint

add missing code

desiderata

update honeywell client library & CODEOWNER

add auth_tokens code, refactor & delint

refactor for broker

delint

bugfix - loc_idx may not be 0

more refactor - ensure pure async

more refactoring

appears all r/o attributes are working

tweak precsion, DHW & delint

remove unused code

remove unused code 2

remove unused code, refactor _save_auth_tokens()

support RoundThermostat

bugfix opmode, switch to util.dt, add until=1h

revert breaking change

store at_expires as naive UTC

remove debug code

delint

tidy up exception handling

delint

* update CODEOWNERS

* fix regression

* fix requirements

* migrate to climate-1.0

* tweaking

* de-lint

* TCS working? & delint

* tweaking

* TCS code finalised

* remove available() logic

* refactor _switchpoints()

* tidy up switchpoint code

* tweak

* teaking device_state_attributes

* some refactoring

* move PRESET_CUSTOM back to evohome

* move CONF_ACCESS_TOKEN_EXPIRES CONF_REFRESH_TOKEN back to evohome

* refactor SP code and dt conversion

* delinted

* delinted

* remove water_heater

* fix regression

* Migrate homekit

* Cleanup away mode

* Fix tests

* add helpers

* fix tests melissa

* Fix nehueat

* fix zwave

* add more tests

* fix deconz

* Fix climate test emulate_hue

* fix tests

* fix dyson tests

* fix demo with new layout

* fix honeywell

* Switch homekit_controller to use HVAC_MODE_HEAT_COOL instead of HVAC_MODE_AUTO (#25009)

* Lint

* PyLint

* Pylint

* fix fritzbox tests

* Fix google

* Fix all tests

* Fix lint

* Fix auto for homekit like controler

* Fix lint

* fix lint
2019-07-08 14:00:24 +02:00
Julien Brochet fadfb89b4c Load the SSDP component only when it's needed (#24420)
* fix(hue): Load the SSDP component only when it's needed

* fix(deconz): Don't load the SSDP component when it's not needed

* Update config_flow.py

* Update test_config_flow.py
2019-06-10 09:11:07 -07:00
Robert Svensson 48276b041c
deCONZ - properly identify configured bridge (#24378) 2019-06-08 08:43:18 +02:00
Robert Svensson 449a7d3fd5 deCONZ migrate to SSDP discovery (#24252)
* Migrate deCONZ to use new SSDP discovery
Add new discovery info manufacturer URL to be able to separate Hue and deCONZ bridges

* Mark deCONZ as migrated in Discovery component

* Fix tests

* Fix Hue discovery ignore deCONZ bridge

* Less snake more badger

* Mushroom

* Fix indentation

* Config flow ignore manufacturer url that is not philips
2019-06-03 09:26:01 -07:00
Robert Svensson 31b2f331db
Library refactorization of deCONZ (#23725)
* Improved sensors

* Lib update signalling

* Replace reason with changed

* Move imports to top of file

* Add support for secondary temperature reported by some Xiaomi devices

* Bump dependency to v59
2019-05-27 06:56:00 +02:00
Robert Svensson 23cb579f9f Support updating deCONZ host address (#22784)
* Update config flow to support updating host address
Improve tests

* Update gateway to handle new address signal

* Improve description why whe need to keep step_init
2019-04-14 21:50:01 -07:00
Robert Svensson d1bf470899
deCONZ multiple gateways fixup (#22774)
* Initial PR was merged before a proper review was performed
* These fixes follow Martins review comments after merge
2019-04-05 22:21:06 +02:00
Robert Svensson b50afec5f1 Support multiple deCONZ gateways (#22449)
* Store gateways inside a dict in deconz domain

* Make reachable events gateway specific

* Gateway shall always exist

* Adapt new device signalling to support multiple gateways

* Services follow gateway master

* Working on unload entry

* Make unload and master handover work
Improve tests for init

* Fix config flow

* Fix linting

* Clean up init tests

* Clean up hassio discovery to fit with the rest

* Store gateways inside a dict in deconz domain

* Make reachable events gateway specific

* Gateway shall always exist

* Adapt new device signalling to support multiple gateways

* Services follow gateway master

* Working on unload entry

* Make unload and master handover work
Improve tests for init

* Fix config flow

* Fix linting

* Clean up init tests

* Clean up hassio discovery to fit with the rest

* Add support for services to specify bridgeid
2019-04-04 17:48:24 -07:00
Pascal Vizeli 5613e8bb60 Hass.io discovery flow deconz (#22623)
* Add Hass.io deCONZ discovery flow

* add bridge ID

* fix attribute

* fix strings

* Address comments

* Add test

* Add only instance / changed maybe later
2019-04-02 19:23:33 -07:00
Robert Svensson 8d1cf553de
Support deCONZ library with exception handling (#21952) 2019-03-24 19:27:32 +01:00
Jason Hu f1b867dccb Re-thrown exception occurred in the blocking service call (#21573)
* Rethrown exception occurred in the actual service call

* Fix lint and test
2019-03-01 23:09:31 -08:00
Robert Svensson 9ce8f4737d
deCONZ thermostat support (#20586)
* Add support for thermostats in deCONZ by adding Climate platform
2019-02-18 17:43:22 +01:00
Paulus Schoutsen 882f5ed079
Don't directly update config entries (#20877)
* Don't directly update config entries

* Use ConfigEntryNotReady

* Fix tests

* Remove old test

* Lint
2019-02-13 20:36:06 -08:00
Robert Svensson a3f0d55737
Change deCONZ to embedded platforms (#20113)
Move all platforms into components/deconz
2019-01-15 19:29:56 +01:00
Paulus Schoutsen df21dd21f2 RFC: Call services directly (#18720)
* Call services directly

* Simplify

* Type

* Lint

* Update name

* Fix tests

* Catch exceptions in HTTP view

* Lint

* Handle ServiceNotFound in API endpoints that call services

* Type

* Don't crash recorder on non-JSON serializable objects
2018-11-30 21:28:35 +01:00
Robert Svensson c5d0440041 deCONZ - manual input fallback in config flow (#18116)
* Add config flow step for manual input
Remove support for loading discovery config from json file

* Small cleanup
Fix all translations to step user instead of step init

* Revert to using step_init

* Small cleanup
Add test_gateway that was forgotten in a previous PR

* Fix hound comment

* Fix empty pydocstring
2018-11-06 10:34:24 +01:00
Robert Svensson a9140dc8f5
deCONZ - retry if setup fails (#17772)
* Make component retry if setup fails
* Improve overall test coverage
2018-10-31 22:38:04 +01:00
Leonardo Brondani Schenkel 47003fc04f deCONZ: configure service can now use 'field' as a subpath together with 'entity' (#17722)
Allow both 'entity' and 'field' to be used simultaneously, where 'field' is used as a sub-path of the device path that is defined by 'entity'.
2018-10-26 09:15:26 +02:00
Robert Svensson 7fe0d8b2f4
deCONZ cover support (#16759)
deCONZ cover platform for Keen vents
2018-09-21 19:59:20 +02:00
Robert Svensson e91a1529e4
deCONZ - Support device registry (#16115)
Add support for device registry in deCONZ component
2018-08-24 19:37:22 +02:00
Robert Svensson f8a478946e deCONZ - support for power plugs (#15752)
* Initial commit for deCONZ switch support

* Fix hound comment

* Fix martins comment; platforms shouldn't depend on another platform

* Fix existing tests

* New tests

* Clean up unnecessary methods

* Bump requirement to v43

* Added device state attributes to light
2018-08-01 11:03:08 +02:00
Paulus Schoutsen ea2ff6aae3
Use async_create_task (#15633)
* Use async_create_task

* Fix test
2018-07-23 14:05:38 +02:00
Robert Svensson ac13a2736b Deconz make groups configurable (#14704)
* Make groups configurable

* Config flow and tests in place

* Fix too long line
2018-06-15 14:31:22 -04:00
Robert Svensson 8c93b484c4 deCONZ - Option to load or not to load clip sensors on start (#14480)
* Option to load or not to load clip sensors on start

* Full flow

* Fix config flow and add tests

* Fix attribute dark reporting properly

* Imported and properly configured deCONZ shouldn't need extra input to create config entry
2018-05-29 10:09:53 -04:00
Robert Svensson 8410b63d9c deCONZ add new device without restart (#14221)
* Add new device without restarting hass

* Remove debug prints

* Fix copy paste error

* Fix comments from balloob
Add tests to verify signalling with new added devices

* Fix hound comments
Add test to verify when new sensor is added

* Fix tests

* Unload entry should unsubscribe all deconz dispatchers

* Make sure mock setup also creates unsub in hass data

* Fix copy paste issue

* Lint
2018-05-05 10:11:00 -04:00