Commit Graph

150 Commits (0458bd68d9aad50f5e21700eeb1ce4cb3cfaa511)

Author SHA1 Message Date
epenet aa00114c2f
Add return type to async tests without arguments (#87612) 2023-02-07 10:26:56 +01:00
epenet a79be493e5
Adjust hass_client type hint in integration tests (#86954)
* Adjust hass_client type hint in integration tests

* Adjust hass_client_no_auth

* Fix rebase
2023-02-02 16:29:57 -05:00
Franck Nijhof 5e81d28116
Update black to 23.1.0 (#87188) 2023-02-02 18:35:24 +01:00
Shay Levy 857df05308
Add Shelly Gen2 update entity for sleeping devices (#86837) 2023-01-30 19:05:13 +02:00
Shay Levy 803cd8d9a3
Handle state unknown if last state is missing in Shelly (#86813)
Shelly - handle state unknown if last state is missing
2023-01-27 23:34:56 +01:00
Shay Levy f9f9741d2a
Separate Shelly tests parameters in parametrize (#86778)
Shelly tests - separate parameters in parametrize
2023-01-27 14:28:35 +01:00
Shay Levy ae6bc96002
Shelly code quality (#86733) 2023-01-27 10:47:05 +02:00
Franck Nijhof e50a531cd9
Code styling tweaks to the tests - Part 2 (#86662)
Co-authored-by: jjlawren <jjlawren@users.noreply.github.com>
2023-01-26 01:23:53 +01:00
Maciej Bieniek 9a68f0abe8
Store Shelly climate `last_target_temp` value in restore extra data (#86482)
fixes undefined
2023-01-24 07:28:34 -10:00
Shay Levy 9e4be56939
Shelly - handle None in RPC power sensors (#86399)
Handle None in RPC power sensors
2023-01-22 22:18:47 +02:00
Shay Levy d5797d9f7d
Cleanup Shelly imports (#86359)
* Cleanup Shelly imports

* Cleanup tests
2023-01-22 01:26:54 +02:00
Shay Levy df77646c8a
Fix Shelly sleeping Gen2 - do not refresh from zeroconf discovery (#86296) 2023-01-20 21:27:31 +02:00
J. Nick Koston d949f51f10
Handle ignored shelly entries when discovering via zeroconf (#86039)
fixes https://github.com/home-assistant/core/issues/85879
2023-01-16 11:21:49 -10:00
J. Nick Koston 2c95c0b3a1
Do not check ble scanner state for sleepy shelly devices (#85566)
fixes #85563
2023-01-10 00:16:14 +02:00
J. Nick Koston 3ac5b780ff
Reject the WiFI AP when considering to update a shelly config entry from zeroconf (#85265)
Reject the WiFI AP IP when considering to update a shelly config entry from zeroconf

fixes #85180
2023-01-06 01:44:10 +02:00
Erik Montnemery a6217ca9b9
Improve error message when an automation fails to validate (#83977) 2022-12-21 23:20:50 +01:00
J. Nick Koston e900918e51
Fix reload race in shelly when device is recently offline (#84328) 2022-12-21 09:29:48 +01:00
J. Nick Koston b7c7e7f57b
Try to reconnect disconnected shelly devices as soon as they discovered by zeroconf (#83872) 2022-12-13 14:22:34 -10:00
J. Nick Koston 0e2ebfe5c4
Move bluetooth watchdog into the scanner base class (#83888) 2022-12-13 11:57:40 -10:00
J. Nick Koston 80a8d5443d
Improve remote bluetooth scanner diagnostics and add missing test cover (#83796) 2022-12-11 21:33:30 -10:00
J. Nick Koston 09f9bb05dc
Add bluetooth diagnostics to shelly (#83438)
* Add bluetooth diagnostics to shelly

* Add tests

Co-authored-by: Shay Levy <levyshay1@gmail.com>
2022-12-09 10:55:10 -05:00
Maciej Bieniek e11917b7cb
Fix restored temperature values in Shelly climate platform (#83428)
* Set last_target_temp value according the unit system

* Convert restored temperature values

* Add test

* Improve comments

* Move _last_target_temp value to constants
2022-12-07 09:11:18 +02:00
J. Nick Koston b665a060f7
Do not try to stop the shelly ble scanner if not connected (#83424)
Co-authored-by: Shay Levy <levyshay1@gmail.com>
2022-12-06 22:57:54 -05:00
Shay Levy e1923bc13b
Add Shelly support for Plus WallDimmer US (#83385) 2022-12-06 19:44:17 +02:00
Shay Levy 815dfe9134
Fix Shelly gen2 channel name (#82655)
* Fix Shelly gen2 channel name

* Review comment
2022-11-24 21:38:32 +02:00
Shay Levy 1e68e8c4b4
Add Shelly tests coverage (#82642)
* Add Shelly tests coverage

* Review comments

* Remove leftovers
2022-11-24 20:07:19 +02:00
Shay Levy 4a089b5c28
Add tests coverage for Shelly climate platform (#82529) 2022-11-22 09:04:55 -06:00
Shay Levy 91a44b697b
Add tests coverage for Shelly number platform (#82480) 2022-11-21 10:55:06 -06:00
Shay Levy 32f3eb722e
Add tests coverage for Shelly entity (#82432)
* Add tests coverage for Shelly entity

* Make it generator expression
2022-11-20 23:59:25 +02:00
Shay Levy 8bd7f59b93
Add tests for Shelly sensor platform (#82385) 2022-11-19 22:01:30 +02:00
Shay Levy ea98f0e9e8
Add tests for Shelly binary_sensor platform (#82367)
* Add tests for Shelly binary_sensor platform

* Rename create to register for
2022-11-19 18:07:02 +02:00
Erik Montnemery 1a274adc28
Add config_entries.async_wait_component (#76980)
Co-authored-by: thecode <levyshay1@gmail.com>
2022-11-17 21:52:57 +01:00
J. Nick Koston 8da969b767
Disable BLE options flow for sleepy shelly devices (#82283) 2022-11-17 20:39:51 +02:00
J. Nick Koston 435fc23737
Add shelly ble scanner support (#82007) 2022-11-15 12:34:45 -06:00
J. Nick Koston 956120662e
Add the ability to register for shelly event callbacks (#82052) 2022-11-14 19:58:10 +01:00
Shay Levy 775f4e9e0d
Clean-up Shelly legacy update entities (#80961) 2022-10-25 21:27:54 +02:00
Shay Levy dce4753510
Cleanup Shelly update platform (#80845) 2022-10-25 00:20:26 +03:00
Shay Levy 228d491216
Fix Shelly entry unload and add tests for init (#80760) 2022-10-22 09:00:35 +02:00
Shay Levy aea7a9af18
Bump aioshelly to 4.0.0 (#80423)
* Bump aioshelly to 4.0.0

* Remove leftover

* Fix number platform

* Set last_update_success to false upon failure in number and climate

* Set last_update_success upon failurie in entity
2022-10-20 15:08:48 +03:00
Shay Levy 8e9457d808
Add Shelly support for sleeping Gen2 devices (#79889) 2022-10-18 22:42:22 +03:00
Shay Levy 9019fcb5c5
Migrate Shelly to use kelvin for color temperature (#79880) 2022-10-08 22:24:19 +03:00
Shay Levy 723b018b63
Refactor Shelly tests - do not access hass.data (#79606) 2022-10-05 11:36:06 +02:00
Shay Levy c70ca1572b
Make Shelly update sensors disabled by default (#79376) 2022-09-30 14:37:58 -04:00
starkillerOG 4bdd8cb459
Shelly migrate to update entity (#78305)
* Add update entity

* fixes

* fixes

* change to CONFIG catogory

* return latest version if no update available

* fixes

* Remove firmware binary_sensors and buttons

* import Callable from collections

* remove ota_update tests

* Update homeassistant/components/shelly/update.py

Co-authored-by: Shay Levy <levyshay1@gmail.com>

* simplify

* fix mypy

* Create test_update.py

* fix isort

* add progress support

* fix styling

* fix update_tests

* fix styling

* do not exclude shelly update test

* bring coverage to 100%

* snake case

* snake case

* change str(x) to cast(str, x)

* simplify tests

* further simplify tests

* Split MOCK_SHELLY_COAP and MOCK_SHELLY_RPC

* fix issort

* fix status test

* fix isort

* run python3 -m script.hassfest

Co-authored-by: Shay Levy <levyshay1@gmail.com>
2022-09-28 20:21:30 +03:00
Maciej Bieniek 8719829fbe
Add missing error catch in Shelly reauth flow (#79205) 2022-09-28 11:00:27 -04:00
Maciej Bieniek c46f55caa8
Add reauth flow to Shelly integration (#78786) 2022-09-24 22:01:49 -04:00
epenet 7bc2712142
Adjust root-import in tests (#78761)
* Adjust root-import in tests

* Adjust diagnostics

* Adjust button

* Adjust select

* Adjust device_tracker

* Adjust camera

* Adjust humidifier

* Adjust media_source

* Adjust update

* Adjust siren

* Adjust number

* Adjust alarm_control_panel

* Adjust notify

* Adjust sensor

* Adjust switch

* Revert anthemav

* Don't adjust demo humidifier
2022-09-19 15:22:23 +02:00
Franck Nijhof 7cd68381f1
Search/replace RESULT_TYPE_* by FlowResultType enum (#74642) 2022-07-07 19:57:36 +03:00
Shay Levy 74e8b076e5
Fix Shelly missing key config flow (#72116) 2022-05-20 12:05:53 +03:00
Simone Chemelli 4a95539d9d
Warn user if "model" key is missing from Shelly firmware (#71612)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2022-05-18 10:29:02 -07:00
J. Nick Koston 24a0007785
Add additional context data to logbook events (#71721) 2022-05-12 17:21:14 -07:00
J. Nick Koston 24d7a464e1
Refactor logbook to reduce overhead and complexity (#71509) 2022-05-08 21:47:26 -07:00
Erik Montnemery 5e50a8abd5
Mark device triggers from hidden or auxiliary entities as secondary (#70335)
* Mark device triggers from hidden or auxiliary entities as secondary

* Update tests
2022-04-21 08:01:32 +02:00
Shay Levy d4d819679c
Add Shelly gen2 authentication support (#69753) 2022-04-14 00:30:03 +03:00
Shay Levy 06e4c2f351
Fix Shelly gen2 cover unavailable when not calibrated (#69671) 2022-04-08 22:54:42 -07:00
Shay Levy eee0c5372c
Use import instead of hass in Shelly tests (#67909) 2022-03-09 19:29:20 +01:00
Shay Levy 2d4d18ab90
Add Shelly gen2 cover support (#67705)
* Add Shelly gen2 cover support

* Make status property
2022-03-08 11:58:08 +02:00
Joshua Roys 9134e5c844
Get discovered zeroconf IPv6 addresses (#65462) 2022-02-11 16:46:17 -06:00
Shay Levy efbbef5922
Fix Shelly detached switches automation triggers (#65059) 2022-01-28 08:30:44 -08:00
Michael 1d2b9d2c63
Add diagnostics platform to Shelly (#64660)
* add config entry diagnostics

* add test

* make pylint happy

* add some device settings

* adjust tests

* add hass system info

* make sw_version be a property of wrapper classes

* remove hass sys info, since is added centraly

* check if device is initialized

* device_info is always available

* add device status data
2022-01-23 02:18:09 +02:00
Shay Levy c65a50bd2e
Fix Shelly error fetching device triggers for sleeping devices (#63103) 2021-12-31 18:47:03 +01:00
Ville Skyttä ea58432721
Use DeviceAutomationType in tests/components/[s-z]* (#62450) 2021-12-21 11:56:00 +01:00
Michael 83acfda757
Add reboot button to Shelly devices (#60417) 2021-11-29 19:49:49 +01:00
Simone Chemelli 07c09ab268
Add new name handling for Shelly RPC devices (#60539) 2021-11-29 16:16:49 +01:00
Michael 296b738740
Add button to trigger ota firmware update for Shelly devices (#58757)
Co-authored-by: Shay Levy <levyshay1@gmail.com>
2021-11-26 14:19:39 +01:00
epenet 77dfeb062f
Update ZeroconfServiceInfo in tests (n-t) (#60219)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-23 10:35:44 -06:00
epenet 4555820987
Use ZeroconfServiceInfo in shelly (#60098) 2021-11-21 16:33:20 -06:00
Ville Skyttä 50e0c58310
Use http.HTTPStatus in components/s* (#58291) 2021-10-23 20:49:04 +02:00
Erik Montnemery e27e4c3561
Add support for device configuration URL (#57539)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-10-14 11:16:56 -07: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
Shay Levy 47340802b3
Add Shelly RPC device trigger and logbook platforms (#56428)
* Add RPC device trigger and logbook platforms

* Single input event for Block and RPC

* Add device generation to shelly.click
2021-09-21 00:09:44 +03:00
Shay Levy e9eb76c7db
Add switch support for RPC device (#56153)
* Add switch support for RPC device

* Apply review comments

* Apply review comments
2021-09-13 09:31:35 +03:00
Shay Levy f1a88f0563
Add config flow support for RPC device (#56118) 2021-09-11 23:28:33 +03:00
Shay Levy 8c3c2ad8e3
Updated changes for aioshelly 1.0.0 (#56083) 2021-09-11 00:48:55 +03:00
Shay Levy c7ada1e8f6
Fix flaky Shelly config flow test (#50982) 2021-05-23 02:11:02 +03:00
Shay Levy 98396e13af
Fix Shelly button device triggers (#48974) 2021-04-09 16:58:44 -07:00
Paulus Schoutsen 34b9e6f6fc
Shelly: set confirm only (#47608) 2021-03-09 13:13:43 +01:00
Paulus Schoutsen 7c2545af6e
Use async_capture_events to avoid running in executor (#47111) 2021-02-26 13:28:52 -08:00
Maciej Bieniek b645b151f9
Catch AuthRequired exception in confirm discovery step for Shelly config flow (#46135) 2021-02-24 07:13:32 -06:00
Maciej Bieniek 2fc1c19a45
Allow to setup of a previously discovered sleeping Shelly device (#46124)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2021-02-09 09:28:40 +01:00
Shay Levy 0875f654c8
Add support for Shelly battery operated devices (#45406)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-02-03 17:03:22 +01:00
Shay Levy e3f38942cc
Add 100% tests coverage for Shelly cover and switch platforms (#45001) 2021-01-11 16:45:06 +01:00
Paulus Schoutsen f1c116831f
Patch Shelly test setting up entry (#44842) 2021-01-05 18:35:54 +01:00
Shay Levy 76537305e2
Add logbook and device trigger platforms to Shelly (#44020)
* Add logbook and device trigger platforms to Shelly

Add `logbook` platform for describing “shelly.click” event
Add `device_trigger` platform for adding automation based on click events:

Example of logbook event:
Shelly 'single' click event for Test I3 channel 3 was fired.
(Test I3 is the name of the device)

Example of automation triggers:
First button triple clicked
First button long clicked and then single clicked
First button double clicked
First button long clicked
First button single clicked and then long clicked
First button single clicked
Second button triple clicked
..
Second button single clicked

* Fix codespell

* Remove pylint added for debug

* Add tests

* Rebase

* Fix Rebase & Apply PR review suggestions

Fix tests after rebasing
Use `INPUTS_EVENTS_DICT` for input triggers
Apply PR suggestions
2021-01-04 23:10:42 +01:00
Simone Chemelli f07bf6a88e
Cleanup timeouts values for Shelly (#44790)
* Updated timeouts

* Small cleanup

* Fix + small cleanup of test code
2021-01-04 14:04:40 +01:00
Franck Nijhof 65cf2fcb6f
Drop asynctest (#44746) 2021-01-01 22:31:56 +01:00
Paulus Schoutsen 2b0556520b
Catch Shelly zeroconf types with uppercase too (#44672)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-01-01 20:54:43 +01:00
Shay Levy fd24baa1f6
Fix Shelly devices missing properties field (#44279) 2020-12-16 21:28:59 +01:00
nivnoach 906e1ce960
Allow manual configuration of ignored config entries (#43947) 2020-12-07 09:25:04 +01:00
Paulus Schoutsen 0ee86ea8e4
Another try to get rid of Shelly flaky test (#43821) 2020-12-01 19:26:43 +01:00
Paulus Schoutsen 897ff31ffe
Maybe fix flaky test (#43690) 2020-11-27 12:31:42 +01:00
Shay Levy f45075eeb5
Use own CoAP lib and support for multicast updates (#42718)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2020-11-02 16:46:34 +01:00
Paulus Schoutsen 1c36bf5e19
Fix block till done in create entry config flow tests (#42290) 2020-10-24 16:20:56 +02:00
On Freund a07c0d1605
Fallback to mac in Shelly config flow title (#40783) 2020-10-21 15:05:06 +02:00
Maciej Bieniek b8f837365c
Bump aioshelly library to version 0.3.3 (#40415) 2020-09-26 22:39:02 +02:00
Ville Skyttä 271ffac4a9
Fix static/class async mocks on Python 3.8.0 and .1 (#40147)
* forked_daapd

* shelly

* simplipy
2020-09-17 08:20:00 +03:00
On Freund 963651d6f2
Add support for authenticated Shelly devices (#39461)
* Add support for authenticated Shelly devices

* Fix comment typos

* Update homeassistant/components/shelly/config_flow.py

Co-authored-by: Maciej Bieniek <bieniu@users.noreply.github.com>

* Fix unauthenticated devices

* Update homeassistant/components/shelly/config_flow.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Code review fixes

* More code review fixes

* Fix typo

* Update homeassistant/components/shelly/config_flow.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

Co-authored-by: Maciej Bieniek <bieniu@users.noreply.github.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-09-01 08:08:37 -04:00
Franck Nijhof 1c2ebdf307
Upgrade black to 20.8b1 (#39287) 2020-08-27 13:56:20 +02:00
Paulus Schoutsen e61f7f0274
100% test coverage for Shelly config flow (#39209) 2020-08-24 13:39:23 +02:00
Paulus Schoutsen ca2bc9906d
Add Shelly integration (#39178) 2020-08-24 12:43:31 +02:00