Commit Graph

1701 Commits (6ef7539a31c59c2d86ecac365814152cd2f4beb7)

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