Commit graph

1657 commits

Author SHA1 Message Date
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