Commit Graph

1754 Commits (0af369d8f9bd727aee545bc2f4ed71f56d5fa76a)

Author SHA1 Message Date
Mick Vleeshouwer 3605c4f32f
Add Overkiz integration (with base + sensor entity) (#62640) 2021-12-23 08:34:35 -10:00
Mick Vleeshouwer c3917fc250
Remove TaHoma integration (#62607) 2021-12-23 16:17:51 +01:00
Allen Porter 23277181ca
Increase test coverage for google calendar (#62648)
* Increase test coverage for google calendar

Update tests to exercise the API responses, getting test coverage
to 97% for calendar.py

----------- coverage: platform linux, python 3.9.6-final-0 -----------
Name                                          Stmts   Miss  Cover   Missing
---------------------------------------------------------------------------
homeassistant/components/google/__init__.py     193     84    56%   92, 163-228, 238, 244-247, 254-262, 274, 298-299, 305-347, 387-392, 416-430, 435-437
homeassistant/components/google/calendar.py     122      4    97%   41, 45, 51, 135
---------------------------------------------------------------------------
TOTAL                                           315     88    72%

* Revert conftest changes

* Update typing errors found on CI

* Update python3.8 typing imports

* Remove commented out code
2021-12-23 07:31:56 +01:00
Franck Nijhof 6ef7539a31
Add base integration tests to Luftdaten (#62594) 2021-12-23 07:25:26 +01:00
G Johansson 566f631933
Implement config_Flow for Sensibo (#60900)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-12-22 10:32:50 -10:00
ollo69 5a41251d45
Add config_flow to AndroidTV integration (#54444)
Co-authored-by: Robert Hillis <tkdrob4390@yahoo.com>
2021-12-20 13:08:35 -06:00
Aaron Bach ebfe9aa384
Add a switch to opt-in to/opt-out of the next Ridwell pickup (#62293)
* Add buttons to opt into/out of the next Ridwell pickup

* Buttons finished

* Coverage

* better name

* Move to switch

* Clean up

* Coverage

* Use correct exception
2021-12-18 23:06:17 -07:00
Franck Nijhof 0dbd948867
Add Open-Meteo integration (second attempt) (#61742) 2021-12-16 21:12:33 +01:00
Simone Chemelli 105ad861bd
Add buttons and deprecate services for Fritz (#61483)
* Add buttons and deprecate services

* Exclude tests

* Log full service name
2021-12-16 13:25:06 +01:00
Martin Hjelmare 0662ab019f
Improve balboa tests (#61691) 2021-12-13 17:11:21 +01:00
Anton Malko e5b04cedf3
Add media_player platform to Lookin (#61337)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-12-10 08:52:51 -10:00
alim4r 7d256f56c5
Refactor Prometheus tests (#60451)
* Removed prometheus from .coveragerc

* Update prometheus tests with handler categories

* Updated prometheus metrics to use the current registry
- don't use the registry created on import (needed for tests)

* Reset the prometheus CollectorRegistry before every test

* Update prometheus metrics generation
- Use latest registry when generating a response

* Add default collectors when resetting the registry

* Move entities to the specific prometheus test case

* Refactor body generation for prometheus tests

* Add test case for sensors without unit after rebase

* Fix prometheus tests
- Wait for events in prometheus tests
- Add workaround for demo platform dependecy conversation (aiohttp frozen router)

* Added prometheus tests for attribute metrics

* Added prometheus tests for binary_sensor

* Add prometheus test for input_boolean

* Add prometheus test for lights

* Add prometheus test for lock

* Add prometheus test for sensor fahrenheit conversion

* Fix prometheus test for input_number
2021-12-08 20:18:21 +01:00
jjlawren 9f3a4c3617
Improve Sonos tests, begin adding coverage (#61198)
* Update entity registry handling

* Add and use fixtures to test setup via config entry

* Remove legacy redundant tests

* Remove unnecessary mock_coro

* Remove unnecessary namespace change

* Move zeroconf payload to fixture

* Begin adding Sonos to codecov

* Mock proper return value

* Revert return value for platform
2021-12-08 19:28:27 +01:00
Alberto Geniola b0affe7bfb
Elmax integration (#59321)
* Add elmax integration.

* Run hassfest and generate requirements_all

* Remove secondary platforms from elmax integration as per first component integration.

* Move ElmaxCoordinator and ElmaxEntity into external file
Linting review

* Remove useless variables

* Fix wrong indentation.

* Remove unecessary platforms.

* Remove unnecessary attributes from manifest.

* Rely on property getters/setters rathern than private attribute from parent.
Update internal entity state just after transitory state update.

* Update homeassistant/components/elmax/const.py

Reference Platform constant

Co-authored-by: Marvin Wichmann <marvin@fam-wichmann.de>

* Update username/password values

Rely on already-present templating constants

Co-authored-by: Marvin Wichmann <marvin@fam-wichmann.de>

* Add missing constant import.

* Remove unnecessary test_unhandled_error() callback implementation.

* Add common.py to coverage ignore list.

* Improve coverage of config_flow.

* Rename the integration.

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

* Fix reauth bug and improve testing.

* Refactor lambdas into generators.

Co-authored-by: Marvin Wichmann <marvin@fam-wichmann.de>
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2021-12-07 22:42:55 +01:00
Charles Garwood 00a82bf945
Remove loopenergy integration (#61175)
* Remove loopenergy integration

* Fix requirements_all.txt

* Fix requirements_test_all.txt
2021-12-07 19:47:44 +01:00
epenet 97d292133f
Revert "Add Open-Meteo integration (#60379)" (#61130)
This reverts commit d802f3a82f.
2021-12-06 23:35:14 +01:00
Franck Nijhof d802f3a82f
Add Open-Meteo integration (#60379)
Co-authored-by: MatthewFlamm <39341281+MatthewFlamm@users.noreply.github.com>
2021-12-06 10:01:12 -08:00
micha91 f94085c83e
Add Yamaha MusicCast Select Entities (#60645)
* Add select entity for Yamaha MusicCast Capabilities

* Add musiccast select to .coveragerc

* Move status strings to string.select.json and auto generate the english translations from it. Let the device class start with yamaha_musiccast__.

* Make all device classes lower case

* Use platform enum to add select
2021-12-06 18:05:49 +01:00
Milan Meulemans a7e129a952
Add Aseko Pool Live integration (#56299) 2021-12-05 17:02:46 -10:00
Kevin Worrel 9d1985ab03
Move screenlogic SCG levels to number platform (#60872)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-12-02 16:36:31 -10:00
Joakim Sørensen 737dd6fc26
Add tests to hassio binary_sensor platform (#60609) 2021-12-01 21:41:31 +01:00
G Johansson 11b81ef88b
Config flow for trafikverket_weatherstation (#60078)
* First commit

* Added tests

* Add requirements for test

* Correction requirements tests

* Add init to untested files

* Fix review comments

* Resolve last items from review

* Add sync_abort_entries_match in import flow
2021-11-30 19:53:41 +01:00
Matthias Lohr 7b81185d2a
Add tolo fan platform (#60502) 2021-11-29 17:15:38 +01:00
Jesse Hills 622d9606a5
Esphome/button (#60522) 2021-11-29 09:57:37 +01:00
micha91 b4730f4ffe
Add Yamaha MusicCast number entities (#60093) 2021-11-28 07:52:46 -10:00
Matthias Lohr db0104c2c9
Add tolo binary_sensor platform (#60365) 2021-11-25 22:39:39 +01:00
Matthias Lohr 4360fb733f
Add tolo button platform (#60345) 2021-11-25 22:02:59 +01:00
Tim Rightnour 03d1efab46
Add Balboa Spa integration (#59234) 2021-11-25 12:04:06 -06:00
Matthias Lohr 2f0ec0d7e5
Add tolo select platform (#60326) 2021-11-25 14:41:57 +01:00
Matthias Lohr 3372288c88
Add tolo sensor platform (#60308) 2021-11-25 12:29:09 +01:00
Matthias Lohr 5853d81944
Add tolo light platform (#60305) 2021-11-24 22:26:08 +01:00
Franck Nijhof 37219e8d04
Add button platform to Tuya (#60304) 2021-11-24 21:10:26 +01:00
Matthias Lohr a399037a46
Add TOLO Sauna (tolo) integration (#55619) 2021-11-24 20:45:13 +01:00
Matthias Alphart 3dac661480
Rewrite Fronius integration (#59686)
* Add unique_id and use DataUpdateCoordinator in Fronius (#57879)

* initial refactoring commit - meters

- config_flow (no strings, no tests yet)
- import yaml config
- FroniusSolarNet class for holding Fronius object , coordinators and some common data
- meter descriptions
- update coordinator
- entities (including devices)

* storage controllers

* error handling on init; inverter unique_id

* inverters

* power_flow

* fix VA, var, varh not valid for device_class power/energy

and add custom icons

* add SolarNet device for system wide values

* cleanup

* config_flow strings

* test config_flow

* use pyfronius 0.7.0

* enable strict typing

* remove TODO comments

* fix lint errors; move FroniusSensorEntity to sensor.py

* power_flow as optional coordinator

API V0 doesn't support power_flow endpoint

* show error message in logs

* prevent parallel requests to one host

* logger_info coordinator

* store FroniusSolarNet reference directly in coordinator

* cleanup coordinators when unloading entry

* round floats returned by Fronius API

* default icons for grid im/export tariffs

* small typing fix

* Update homeassistant/components/fronius/sensor.py

Co-authored-by: Brett Adams <Bre77@users.noreply.github.com>

* DC icons

* prepend names with "Fronius" and device type

to get more reasonable default entity_ids (eg. have them next to each other when alphabetically sorted)

* remove config_flow and devices

* rename _FroniusUpdateCoordinator to FroniusCoordinatorBase

and mark ABC

* move SensorEntityDescriptions to sensor.py

* Revert "move SensorEntityDescriptions to sensor.py"

This reverts commit 2e5a726eb6.

* Don't raise ConfigEntryNotReady and use regular refresh method

* move bridge initialization out of helper class

* no coverage tests

* power_flow update interval 10 seconds

* move SensorEntityDescriptions to sensor.py

without introducing a circular dependency

* deprecation warning for CONF_MONITORED_CONDITIONS

* remove extra_state_attributes form meter sensor entities

* readd diagnostic entities

* decouple default entity_id from default name

* use key instead of name for entity_id

and make deprecated config key optional

* adjust tests

* use old entity_ids

these changes are now backwards compatible

* check coverage

* simplify entity description definitions

* restore entity names of previous implementation

Co-authored-by: Brett Adams <Bre77@users.noreply.github.com>

* Add config_flow for Fronius integration (#59677)

* Cleanup Fronius config_flow and tests (#60094)

* Add devices to Fronius integration (#60104)

* New entity names for Fronius entities (#60215)

* Adaptive update interval for Fronius coordinators (#60192)

Co-authored-by: Brett Adams <Bre77@users.noreply.github.com>
2021-11-24 02:04:36 +01:00
Milan Meulemans 5550b5445b
Add Button platform to Nanoleaf (#60169)
Co-authored-by: J. Nick Koston <nick@koston.org>
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2021-11-23 01:26:37 +01:00
Tim Rightnour 3639481027
Add sensors to venstar integration (#58851) 2021-11-22 18:05:12 -06:00
Hans Oischinger 38b976e6d6
Add vicare config flow (#56691)
* Configuration via UI

Config flow / YAML deprecation
- Support discovery via MAC address
- Support import of YAML config
- Switch to ConfigEntry, get rid of platform setup

* Fix review comments

* More tests for vicare yaml import
2021-11-22 15:06:42 +01:00
Simone Chemelli c4128f853d
Add climate platform to Shelly (#59712)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-11-21 16:34:00 -06:00
Marvin Wichmann 1d63ae8696
Code quality improvements for KNX integration (#60024) 2021-11-20 16:15:33 +01:00
Marvin Wichmann e5c33474e3
Add config and options flow to KNX integration (#59377) 2021-11-20 11:30:41 +01:00
Ullrich Neiss 40104de0bf
Address late review of kostal plenticore (#59998) 2021-11-20 11:16:53 +01:00
Daniel Hjelseth Høyer a3d5aec778
Mill local access (#59549)
* Mill local

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>

* Mill local

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>

* Mill local

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>

* Update homeassistant/components/mill/config_flow.py

Co-authored-by: Allen Porter <allen@thebends.org>

* Update homeassistant/components/mill/config_flow.py

Co-authored-by: Allen Porter <allen@thebends.org>

* Update homeassistant/components/mill/config_flow.py

Co-authored-by: Allen Porter <allen@thebends.org>

* Fix review comments

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>

* coveragerc

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>

* Fix review comments

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>

* Fix review comments

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>

* Fix review comments

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>

Co-authored-by: Allen Porter <allen@thebends.org>
2021-11-18 21:44:45 -08:00
Eduard van Valkenburg 958c199d80
Brunt package update with async, data update coordinator and config flow (#49714)
* implemented config_flow and dataupdatecoordinator

* implemented config flow, dataupdatecoordinator and tests.

* undid extra vscode task

* fixed pylint errors

* updates based on review

* fix mypy in reauth

* fast interval to 5 sec

* fixed test patches and others from review

* added released package

* deleted wrong line from coveragerc

* updates to config and tests

* fixed test patch
2021-11-18 23:00:42 +01:00
Ullrich Neiss 3dc0b9537c
Move Kostal Plenticore writable settings from sensor to select widget or switch (#56529)
* Move "Battery:SmartBatteryControl:Enable" from a simple sensor to a switch
Add "Battery:TimeControl:Enable" as a switch

If you want to change charging behavior you need to turn off both switches, before you can enable the function you want. (Same as on Plenticore UI)

* removed:
    @property
    def assumed_state(self) -> bool

was copied from an switchbot integration, does not make sense or does deliver valuable information

Tried to set constant properties in the constructor

* correct typo, add new line at eof

* Initial state of switch was missing after (re)starting HA. Now working.

* Reformatted with black

* correct syntax errors from test run 09.10.2021

* reformat

* update 15.10.2021

* Set select value is working

* update 05.11.2021

* data correctly received

* working completly

* remove old switch definitions, now replaced by select widget

* correct complaints from workflow run on 11/11/2021

* Add explanatory comment for switch and select

* Correct comments

* Removed function async def async_read_data(self, module_id: str, data_id: str)
from class SettingDataUpdateCoordinator

* Add Mixin class for read/write

* try to make select.py less "stale"

* new dev environment 2

* new dev environment 2

* correct syntax

* minor coding standard correction

* Remove BOM

* Remove BOM on select.py

* Updated .coveragerc
2021-11-18 16:06:32 +01:00
Thomas Schamm 92ca94e915
Add cover platform to bosch_shc integration (#51443)
Co-authored-by: Artem Draft <Drafteed@users.noreply.github.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-11-18 14:00:01 +01:00
Robert Hillis 14adcbc07c
Add tests for goalzero (#59446)
* Add tests for goalzero

* tweak

* tweak
2021-11-16 07:18:30 -08:00
Khole e9c8de25df
Add Hive Alarm Support (#59670)
* Add alarm support

* Update code coverage

* Update homeassistant/components/hive/alarm_control_panel.py

Co-authored-by: Allen Porter <allen.porter@gmail.com>

* Add alarm support

* Update code coverage

* Update homeassistant/components/hive/alarm_control_panel.py

Co-authored-by: Allen Porter <allen.porter@gmail.com>

* Update icon and device info

Co-authored-by: Allen Porter <allen.porter@gmail.com>
2021-11-16 07:18:09 -08:00
Franck Nijhof 458bc92124
Add test coverage to Twente Milieu (#59640) 2021-11-14 11:11:29 +01:00
Sean Dague da8bfed793
Remove mychevy component (#59629) 2021-11-14 11:09:32 +01:00
Franck Nijhof 28a0ba4df3
Modernize/Simplify Twente Milieu (#59632) 2021-11-13 15:34:09 +01:00
j-stienstra 0ae5b9e880
Add Jellyfin integration (#44401)
* Initial commit after scaffold setup

* Add initial config flow

* Create initial entity

* Ready for testing

* Can browse, no result yet

* Further improvements. Browsing is working.
Now need to work on proper stream URL

* Two valid URLs. Do not play in HA

* First working version for music

* Add thumbnail

* Includes Artist->Album hierarchy

* Add sorting of artists, albums and tracks

* Remove code for video libraries

* Improved code styling

* Optimize configuration flow

* Fix unit tests for config flow

* Fix import order

* Conform to style requirements

* Use empty string as media type for non playables

* 100% code coverage config_flow

* Type async_get_media_source

* Final docsctring fix after rebase

* Add __init__ and media_source files to .coveragerc

* Fix testing issues after rebase

* Fix string format issues and relative const import

* Remove unused manifest entries

* Raise ConfigEntry exceptions, not log errors

* Upgrade dependency to avoid WARNING on startup

* Change to builtin tuple and list (deprecation)

* Log broad exceptions

* Add strict typing

* Further type fixes after rebase

* Retry when cannot connect, otherwise fail setup

* Remove unused CONFIG_SCHEMA

* Enable strict typing checks

* FlowResultDict -> FlowResult

* Code quality improvements

* Resolve mypy.ini merge conflict

* Use unique userid generated by Jellyfin

* Update homeassistant/components/jellyfin/config_flow.py

Remove connection class from config flow

Co-authored-by: Milan Meulemans <milan.meulemans@live.be>

* Minor changes for additional checks after rebase

* Remove title from string and translations

* Changes wrt review

* Fixes based on rebase and review suggestions

* Move client initialization to separate file

* Remove persistent_notification, add test const.py

Co-authored-by: Milan Meulemans <milan.meulemans@live.be>
2021-11-12 14:57:40 +01:00
Jonathan Keljo a079b4fd58
Add tests to bring greeneye_monitor to 99% coverage (#58661)
* Bring greeneye_monitor to 99% coverage.

* Pass monitor into listeners on Monitors

* Updates for changes in `dev`, create mock monitor

* Remove logging left in after debugging

* Remove xfails now that #58764 has merged
2021-11-11 13:20:16 +01:00
Robert Hillis 4c2bf428d6
Revert "Add tests for goalzero" (#59407) 2021-11-09 12:01:12 +01:00
lambtho 5418e76c84
IOTA removal (#59380) 2021-11-09 10:40:28 +01:00
Robert Hillis cc872b4618
Add tests for goalzero (#57008)
* Add tests for goalzero

* clean up
2021-11-08 21:29:25 -08:00
Tim Rightnour 5ac55b3443
Add binary_sensor to venstar to track alerts (#58831)
* Add binary_sensor to venstar to track alerts

* Add binary_sensor.py to coveragerc

* Apply suggestions from code review by alengwenus

Co-authored-by: Andre Lengwenus <alengwenus@gmail.com>

* Fixup black any mypy complaints

* Yank the typing, it makes everything complain

Co-authored-by: Andre Lengwenus <alengwenus@gmail.com>
2021-11-05 12:00:57 +01:00
Aaron Bach f7dea3aa1d
Add Ridwell integration (#57590) 2021-10-30 08:27:48 -06:00
L-I-Am 3727fb5288
Broadlink Integration add support for LB1 (#50953)
Co-authored-by: Felipe Martins Diel <41558831+felipediel@users.noreply.github.com>
2021-10-26 21:20:11 -05:00
Yuval Aboulafia 4db743d01f
Remove Huawei Router (ADR-0004) (#57136) 2021-10-26 20:32:22 +02:00
Joakim Plate 6b1b8c9880
Fjaraskupan number entity for periodic venting (#58179) 2021-10-26 10:53:13 -05:00
Dave T e22aaea5b2
Aurora abb (solar) configflow (#36300)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-10-25 20:04:42 -05:00
Tim Rightnour dad5d19a35
Add config flow to venstar (#58152) 2021-10-25 23:40:36 +02:00
Patrik Lindgren c950f1ccfa
Initial support for Tradfri STARKVIND Air purifier (#58295)
* Initial commit

* Update homeassistant/components/tradfri/const.py

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

* Feedback

* Updates

* Remove logger

* Fix codestring

* Update homeassistant/components/tradfri/fan.py

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

* Update homeassistant/components/tradfri/fan.py

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

* Update homeassistant/components/tradfri/fan.py

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

* Percent value

* Add tests

* Typo

* Update tests

* Fix util function

* Update homeassistant/components/tradfri/fan.py

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

* Update after review

* Review

* Coverage

* Fix test

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-10-25 08:15:46 +02:00
Daniel Hjelseth Høyer 26f0ea4a24
OpenGarage binary sensor (#58030)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-10-23 10:53:49 -10:00
Sören b0b49c611e
Nello removal (#57926) 2021-10-22 21:40:39 +02:00
Franck Nijhof b413f7434f
Add support for min/max dimmer brightness in Tuya (#58165) 2021-10-22 20:28:16 +02:00
Ryan Fleming c84fee7c6e
Rework octoprint (#58040)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-10-22 15:25:12 +02:00
ANMalko 749258a05d
Add climate platform to lookin (#58175)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-10-21 12:00:48 -10:00
ANMalko 626bd25129
Add LOOKin integration (#58125)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-10-21 07:10:23 -10:00
J. Nick Koston 20c35e6032
Move Screenlogic lights to the light platform (#55467)
Co-authored-by: Kevin Worrel <37058192+dieselrabbit@users.noreply.github.com>
2021-10-20 12:38:21 -10:00
jan iversen f2a5d92e61
Fix connect_fail test and modbus.py 100% coverage (#57894)
Co-authored-by: Joakim Sørensen <joasoe@gmail.com>
2021-10-20 15:22:24 -07:00
jan iversen 45983b5edf
Activate tradfri in coverage and clean conftest for tradfri (#58058) 2021-10-20 13:36:02 +02:00
Franck Nijhof fbe3ce1bf7
Add cover platform to Tuya (#58045) 2021-10-19 19:36:15 +02:00
Franck Nijhof d8a354fa8f
Add humidifier platform to Tuya (#58025) 2021-10-19 12:10:05 +02:00
Daniel Hjelseth Høyer a3cae17d88
Open garage sensor (#57976) 2021-10-19 09:05:55 +02:00
Robert Hillis 4625a05706
Add init tests for agent dvr (#57022)
* Add init tests for agent dvr

* ci
2021-10-19 08:53:30 +02:00
Franck Nijhof 174eaefe61
Add vacuum platform to Tuya (#57996) 2021-10-18 23:30:26 +02:00
Franck Nijhof d64f210b67
Add camera platform to Tuya (#57865) 2021-10-16 14:57:30 -07:00
Franck Nijhof 6e5d49144a
Add siren platform to Tuya (#57780) 2021-10-15 22:28:14 +02:00
Martin Hjelmare 31ccaac865
Add vlc telnet config flow (#57513) 2021-10-15 11:46:58 -07:00
Franck Nijhof 0407a56fdf
Add number platform to Tuya (#57672) 2021-10-14 13:15:41 -07:00
Franck Nijhof cef34356e2
Add sensor platform to Tuya (#57668) 2021-10-14 12:04:02 -07:00
Franck Nijhof fdc6d9e004
Add select platform to Tuya (#57674) 2021-10-14 09:50:51 -07:00
Franck Nijhof b28062789f
Remove deprecated Lyft integration (#57638) 2021-10-14 11:27:09 +02:00
ollo69 827501659c
Nut: Use coordinator data, code cleanup and add test coverage (#57643) 2021-10-13 16:05:06 -10:00
Franck Nijhof 45f3eb6991
Remove deprecated Wink integration (#57634) 2021-10-14 00:20:13 +02:00
Franck Nijhof b2cef78d90
Add binary sensor platform to Tuya (#57623) 2021-10-13 22:12:07 +02:00
jan iversen 2734ae17f3
Modbus baseplatform.py and Validators.py 100% coverage (activate coverage) (#57546) 2021-10-13 11:51:51 -07:00
RenierM26 48c2cfa6f8
Use entity description for Ezviz sensors (#56634) 2021-10-11 20:09:19 +02:00
Glenn Waters d0b37229dd
Switch to config_flow for Environment Canada (#57127)
* Add config_flow to Environment Canada

* Add unique_id

* Remove erroneous directory.

* Tests working!!

* Add back setup.

* First cut of import.

* Temp

* Tweak names.

* Import config.yaml.

* Clean up imports.

* Import working! Some refactor to clean it up.

* Add import test.

* Small optimization.

* Fix comments from code review.

* Remove CONF_NAME and config_flow for it.

* Fixup strings to match new config_flow.

* Fixes for comments from last review.

* Update tests to match new import code.

* Clean up use of CONF_TITLE; fix lint error on push.

* Phew. More cleanup on import. Really streamlined now!

* Update tests.

* Fix lint error.

* Fix lint error, try 2.

* Revert unique_id to use location as part of ID.

* Fix code review comments.

* Fix review comments.
2021-10-11 17:33:29 +02:00
Marc Mueller 858739949b
Use EntityDescription - openweathermap (#56888) 2021-10-11 16:18:18 +02:00
jan iversen 199cf649be
Add test of lazy_error in modbus (#57170) 2021-10-11 12:43:05 +02:00
Franck Nijhof 82160fa350
Add config flow to Stookalert (#57119) 2021-10-08 11:34:22 +02:00
Kevin Hellemun dc5e4392ae
Refactor Xiaomi vacuum to sensors (#54990)
* Refactor Xiaomi vacuum with sensors.

This is the first step into refactoring xiaomi vacuum attributes into sensors.
What is missing are some switches and binary sensors etc.

https://github.com/home-assistant/core/issues/51361

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Use generic sensor for Xiaomi vacuum sensors.

By using HA coordinator, the generic Xiaomi sensor class can be used with these
coordinators to get the status sensors from vacuum. This also means now that
sensors are available as soon as HA starts, which is a nice plus.

Now the only reason to create a subclass of the generic sensors is when custom
value parsing needs to be done.

https://github.com/home-assistant/core/issues/51361

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Working vacuum sensors via 1 coordinator.

Vacuum needs a custom coordinator to ensure that it fetches all the needed data
and puts it in a dict. From this dict the sensors will then get their data
accordingly.

https://github.com/home-assistant/core/issues/51361

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Remove vacuum setup method in sensor

Sensor is generic enough that vacuum does not require its own setup method.

https://github.com/home-assistant/core/issues/51361

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Don't auto register generic sensors.

Let the user decide which sensor is useful for them and enable them.

https://github.com/home-assistant/core/issues/51361

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Remove converted attributes from xiaomi vacuum.

The attributes that have been converted so far should be removed from the vacuum
attributes list.

https://github.com/home-assistant/core/issues/51361

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Fetch data from vacuum sequentially.

It seems some vacuums do not like parallel requests. The requests that came
before are ignored.

https://github.com/home-assistant/core/issues/51361

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Refactor vacuum sensors to its own container.

By moving vacuum sensors to its own container, there is no more key collisions.
This in turns means that there is need for the split hack to ensure key names
are correct.

https://github.com/home-assistant/core/issues/51361

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* fixup! fix bad rebase.

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Fix sensor naming and default registration.

Use proper names for sensors, no need to include from which device status it
came.

Registration of the sensor by default has been parameterised. If the param is
not set, the sensor is not registered.

https://github.com/home-assistant/core/issues/51361

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Make vacuum platform also use coordinator for its data.

By using the coordinator for data in vacuum platfrom, removes the cases where
request gets ignored during the case where the requests are done concurrently by
separate platforms.

https://github.com/home-assistant/core/issues/51361

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Add binary sensor for vacuum

Add binary sensor for waterbox, mop, and water shortage.

https://github.com/home-assistant/core/issues/51361

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Added proper icons to sensors.

https://github.com/home-assistant/core/issues/51361

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Refactor sensors to use dataclass.

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Make vacuum use coordinator for its data.

This commit also insures that the binary sensors are only registered for devices
that include a mop.

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Apply suggestions from code review

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

* Minor refactoring

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Update data from coordinator after running command.

This is is to have a faster status change when executing a command like changing
fan speeds. If a manual refresh is not triggered. Worst case scenario it will
take 10s for the new fan speed to be reported in HA.

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Refresh within coroutine is ok.

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Move logging to _handle_coordinator_update

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Use internal state attribute.

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Fix vacuum typing

* Fix tests constants

* Fix vacuum inconsistent return values

* Fix vacuum state update

* Fix vacuum tests

* Remove impossible cases

* Parametrize custom services test

* Move goto test

* Move clean segment test

* Move clean single segment test

* Test service pause

* Include vacuum in coverage

* Delint

* Fix vacuum sensor dict collision.

This also prevents collision for unique id. As the key is used to construct
unique ids.

* Use f strings as dict keys

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-10-07 18:30:17 +02:00
Sylvia van Os dc6f6b7f68
Remove Essent integration (#56991) 2021-10-04 13:31:40 +02:00
icemanch a95c6b10f7
Flux led config flow (#56354)
Co-authored-by: Milan Meulemans <milan.meulemans@live.be>
Co-authored-by: Erik Montnemery <erik@montnemery.com>
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-10-02 07:19:36 -10:00
Oliver Ou d3b1ccb668
Tuya v2 Integration Release (#56820)
Co-authored-by: 乾启 <18442047+tsutsuku@users.noreply.github.com>
Co-authored-by: dengweijun <dengweijunben@gmail.com>
Co-authored-by: dengweijun <mengzi.deng@tuya.com>
Co-authored-by: erchuan <jie.zheng@tuya.com>
Co-authored-by: erchuan <erchuan365@outlook.com>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-09-30 12:02:56 +02:00
Maciej Bieniek 0463007050
Add switch platform to Tractive integration (#55517) 2021-09-29 21:06:11 +02:00
Daniel Hjelseth Høyer d5c3d234ec
Open garage, add config flow (#55290) 2021-09-29 09:43:51 -06:00
Maciej Bieniek 2581a3a735
Add binary sensor platform to Tractive integration (#56635)
* Add binary sensor platform

* Update .coveragerc file

* Create battery charging sensor only if tracker supports it

* Improve async_setup_entry

* Add TRAXL1 model
2021-09-28 09:56:06 +02:00