Commit Graph

10328 Commits (173582d4fc899f049dd534d548c7976c40daa664)

Author SHA1 Message Date
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
Erik Montnemery 159506262a
Skip duplicated data when calculating fossil energy consumption (#60599) 2021-12-08 10:59:26 -08: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
Erik Montnemery f30eb05870
Refactor recorder queue handling (#61161)
* Refactor recorder queue handling

* Address pylint's concerns

* Implement workaround for mypy bug

* Address review comments
2021-12-08 16:54:26 +01:00
Thomas Dietrich bbe6d3c9ae
Statistics refactor testcases in async pytest style (#60935)
* Implement optional manually defined uniqueid

* Fix test case via mocked environment

* Refactor testcases

* Fix missing awaits

* Revert order changes, reduce use of block command

* Tidy up mocked time testcases
2021-12-08 16:53:18 +01:00
Erik Montnemery 5169ee69c7
Attempt to fix flaky prometheus test (#61242) 2021-12-08 16:08:02 +01:00
epenet 9f15e7dcf4
Fix flaky tests around frame helper (#61179)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-08 10:50:56 +01:00
Paulus Schoutsen b7539fc0de
Fix islamic prayer times timestamp sensor (#61207) 2021-12-07 23:39:27 -08:00
Daniel Hjelseth Høyer 8cee47072d
Add local access for Adax (#60019) 2021-12-07 16:48:16 -10:00
J. Nick Koston 6b70bd7495
Fix uncaught exception in bond config flow (#61184) 2021-12-07 17:20:38 -08: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
Marcel van der Veldt 7c7df5bb51
Change check for existence of options flow (#61147)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-12-07 12:50:34 -08:00
einarhauks dced4d4542
Display energy in wh instead of kWh (#61169) 2021-12-07 11:33:24 -08:00
Allen Porter 200a5c7e05
Fix flaky tests with unsynchronized stream `available` assertions (#61167)
Remove assertions that are not guaratuneed to be safe depending
on the state of the background worker. This leaves in the state
check for the keepalive case which does have some synchronization
already.
2021-12-07 07:40:36 -08:00
Tim Rightnour 489d85d862
Add Onewire diagnostic and config switches and binary_sensors (#59309)
* Onewire: Add diagnostic and config switches and binary_sensors
This commit adds diagnostic and config switches and binary_sensors to
the HobbyBoards devices.  With these, the user will be able to configure
those devices, without having to run owwrite/owread commands outside
of HA.

* Address review from @epenet

* Add HB_HUB to DEVICE_SUPPORT_OWSERVER

* Device class and entity category enums

* Fixup merge breakage

* Remove duplicate lines
2021-12-07 13:59:43 +01:00
Tobias Sauerwein 45c463b61c
Fix Netatmo climate issue (#61154)
Signed-off-by: cgtobi <cgtobi@gmail.com>
2021-12-07 13:56:31 +01:00
Stefan Agner f0006b92be
Allow to lock SQLite database during backup (#60874)
* Allow to set CONF_DB_URL

This is useful for test which need a custom DB path.

* Introduce write_lock_db helper to lock SQLite database

* Introduce Websocket API which allows to lock database during backup

* Fix isort

* Avoid mutable default arguments

* Address pylint issues

* Avoid holding executor thread

* Set unlock event in case timeout occures

This makes sure the database is left unlocked even in case of a race
condition.

* Add more unit tests

* Address new pylint errors

* Lower timeout to speedup tests

* Introduce queue overflow test

* Unlock database if necessary

This makes sure that the test runs through in case locking actually
succeeds (and the test fails).

* Make DB_LOCK_TIMEOUT a global

There is no good reason for this to be an argument. The recorder needs
to pick a sensible value.

* Add Websocket Timeout test

* Test lock_database() return

* Update homeassistant/components/recorder/__init__.py

Co-authored-by: Erik Montnemery <erik@montnemery.com>

* Fix format

Co-authored-by: J. Nick Koston <nick@koston.org>
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-12-07 13:16:24 +01:00
Erik Montnemery af2e95d891
Guard against missing states in Alexa state updates (#61152) 2021-12-07 12:44:50 +01:00
Erik Montnemery 5161126b58
Bump hatasmota to 0.3.1 (#61120) 2021-12-07 08:07:31 +01:00
epenet b8b4855b8e
Prevent log flooding in frame helper (#61085)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-06 15:26:31 -08:00
Marcel van der Veldt 9e6e9774d1
Remove colon from default entity name in Hue integration (#61118) 2021-12-06 15:17:17 -08:00
epenet 97d292133f
Revert "Add Open-Meteo integration (#60379)" (#61130)
This reverts commit d802f3a82f.
2021-12-06 23:35:14 +01:00
epenet d64bf3cc6c
Use dataclass properties in Zeroconf tests (#61109)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-06 09:16:39 -10: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
Erik Montnemery e33384d8b9
Fix CO2 calculation when data is missing (#61106) 2021-12-06 09:55:28 -08:00
Marcel van der Veldt bd8bba9e3f
Fix migration of entities of Hue integration (#61095)
* fix device name in log

* Fix Hue migration for all id versions

* fix tests

* typo

* change to bit more universal approach

* fix test again

* formatting
2021-12-06 08:24:59 -08:00
Pierre Ståhl 3a56cfed3a
Update Apple TV integration to support tvOS 15 (#58665) 2021-12-06 13:04:18 +01:00
Allen Porter bbe4a67a98
Coalesce nest media source preview clips by session and bump google-nest-sdm (#61081) 2021-12-05 23:59:24 -08:00
schreyack 1bcff0907b
Fix previous setting briefly appearing on newer flux_led devices when turning on (#60004)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-12-05 23:56:59 -08:00
J. Nick Koston 2f0695e408
Fix missing unique id in enphase_envoy (#61083) 2021-12-05 23:53:53 -08:00
J. Nick Koston 52d6b83da8
Abort flux_led discovery if another device gets the ip (#61074)
- If the dhcp reservation expired for the device that
  was at the ip and a new flux_led device appears we
  would discover it because the unique_id did not match
2021-12-05 22:41:09 -06:00
Milan Meulemans a7e129a952
Add Aseko Pool Live integration (#56299) 2021-12-05 17:02:46 -10:00
epenet fb5cc13061
Adjust yeelight ssdp_listener tests (#61065) 2021-12-05 17:51:45 -08:00
Matthias Alphart ac263acb1c
Don't use ConfigEntry update listener for Fronius (#61017)
* disable `async_setup_entry` in config_flow tests

* don't use config_entry update listener

* add `Final` to constants

* assert that an updated entry causes a reload (unload)
2021-12-05 23:29:39 +01:00
Allen Porter 5bd1139867
Fix regression in nest event media player with multiple devices (#61064) 2021-12-05 13:02:37 -08:00
Franck Nijhof a4ffa63165
Handle unknown/unavailable state for mobile_app (#60974) 2021-12-05 09:51:57 -08:00
Marcel van der Veldt b98bc64604
Disable options flow for Hue V2 bridges (#61045) 2021-12-05 09:47:44 -08:00
Allen Porter 5fdcbbe0e1
Fetch media for events for rendering in the nest media player (#61056) 2021-12-05 09:45:40 -08:00
Tim Rightnour dd4ede09c8
Add Venstar runtimes and battery sensors (#60414)
* Venstar: Add runtimes and battery sensors

* Address review - replace classes with lambda functions

* Clean up patch usage, make temperature_unit it's own function

* Remove double define of entities
2021-12-05 17:23:22 +01:00
Tim Rightnour bf1cacf4b2
Address late review of Balboa (#61004)
* Initial fixes from review of balboa climate

* Minor fixes from review
2021-12-05 17:22:13 +01:00
Franck Nijhof 5efb88f3f1
Remove deprecated YAML configuration from DSMR (#61008) 2021-12-05 17:09:37 +01:00
J. Nick Koston f5d7adc018
Fix lutron caseta discovery with newer firmwares (#61029) 2021-12-05 17:09:18 +01:00
Maximilian 9f7b8d3009
Add nina integration (#56647)
* Added nina integration

* Improvements implemented

* Fixed lint errors

* Added tests

* Improvements implemented

* Use client session from HA

* Added custom coordinator

* Fixed tests

* Fix pylint errors

* Library updated to 0.1.4

* Optimization of static attributes

* Removed unused code

* Switched to BinarySensorDeviceClass

* Switched to Platform Enum

* Improve repetition

* Improve repetition

* Fix corona filter

* Removed intermediate variable

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

* Fix black formatting

Co-authored-by: Marvin Wichmann <marvin@fam-wichmann.de>
2021-12-05 15:11:02 +01:00
Franck Nijhof cf371ea8dd
Remove deprecated base entity classes (#61006)
* Remove deprecated base entity classes

* Clean up tests
2021-12-05 13:53:52 +01:00
Marc Mueller 21c09d1a3e
Fix panasonic_viera tests (#60999)
Don't modify global test state
2021-12-05 12:19:14 +01:00
rikroe 380c1a4be9
Fix BMW Connected Drive (#60938)
* Bump bimmer_connected to 0.8.5

* Always update HA states after service execution

* Fix BMW device tracker & vehicle_finder service

* Add charging_end_time sensor

* Fix pylint & pytest

* Remove unneeded DEFAULT_OPTION

* Revert adding charging_end_time & state_attributes

* Don't delete option data for CONF_USE_LOCATION

* Remove stale string

Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2021-12-05 11:20:40 +01:00
Allen Porter 08003c5287
Improve nest media source event timestamp display (#61027)
Drop subsecond text from the nest media source event timestamp display, using a common date/time
template string.
2021-12-05 00:39:18 -08:00
Marvin Wichmann affa3a6ada
Add missing local_ip to KNX config flow and options flow (#61018)
* Add missing local_ip to KNX config flow and options flow

* Update strings
2021-12-04 23:07:28 +01:00
David F. Mulcahey 5fd4c37427
Fix missing test assertion in ZHA siren test (#61009) 2021-12-04 13:50:55 -05:00
Martin Hjelmare c9bb688a79
Revert metoffice weather daytime (#60978) 2021-12-04 10:29:48 +01:00
Thomas Dietrich 6d6e0dd8bf
Add unique_id to the statistics component (#59205)
* Implement optional manually defined uniqueid

* Fix test case via mocked environment
2021-12-04 09:50:47 +01:00
Paulus Schoutsen a59ec9ca5e
Handle invalid device registry entry type (#60966)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-12-04 09:20:12 +01:00
J. Nick Koston 10e669e69e
Fix yeelight name changing to ip address if discovery fails (#60967) 2021-12-04 08:41:58 +01:00
J. Nick Koston 7fbe1dbc99
Remove legacy fan compatibility shim (#59781) 2021-12-03 21:57:46 -08:00
Chen-IL ac26c2378b
Add temperature sensors for Asuswrt (#58303)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-12-03 11:27:17 -08:00
Clifford Roche d6c27809dc
Gree update device ips when changed (#57876) 2021-12-03 11:18:53 -08:00
Jan Bouwhuis 88b93546f3
Re-add-tests with new filters removed with #60854 (#60895) 2021-12-03 11:04:05 -08:00
Allen Porter ba99dc3af9
Add Nest Battery Cam event clip support with a Nest MediaSource (#60073) 2021-12-03 10:53:05 -08:00
epenet b65b25c1bb
Move MqttServiceInfo to init.py (#60905)
Co-authored-by: epenet <epenet@users.noreply.github.com>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-12-03 19:34:48 +01:00
David F. Mulcahey 02b5449648
Add support for siren entities in ZHA (#60920) 2021-12-03 19:23:57 +01:00
jjlawren cbf2bf2e1f
Add audio input format sensor to Sonos HT devices (#60884) 2021-12-03 10:06:56 -08:00
Marius b61dede826
Add command_line icon_template (#58877)
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2021-12-03 10:06:32 -08:00
Tobias Sauerwein cf7a614309
Add battery sensor for Netatmo climate devices (#60911) 2021-12-03 09:33:24 -08:00
Marvin Wichmann 3baa7b679d
Use new Platform enum in KNX (#60902) 2021-12-03 09:29:38 -08:00
Matthias Alphart 77cd751543
DHCP discovery for Fronius integration (#60806)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-12-03 18:29:15 +01:00
epenet 75ec937359
Use new Platform enum in Renault (#60903)
* Use Platform enum in Renault

* Use Platform enum in Renault tests

Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-03 09:28:04 -08:00
epenet 231d434b76
Use new Platform enum in Onewire (#60904)
* Use new Platform enum in Onewire

* Use Platform in tests

Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-03 09:25:22 -08:00
epenet adf2fa5664
Use EntityCategory enum in Onewire (#60907)
* Use EntityCategory enum in Onewire

* Add checks for the entity_category

* Fix typo

Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-03 09:20:00 -08:00
Erik Montnemery 17dc609363
Correct validation of conditions in scripts and automations (#60890)
* Correct validation of conditions in scripts and automations

* Fix test
2021-12-03 09:08:28 -08:00
Marc Mueller f57d42a9e8
Use platform enum (1) [A-D] (#60908)
* Use platform enum (1) [A-D]

* Fix imports

* Fix tests

* Use Platform even in tests
2021-12-03 08:51:30 -08:00
Bram Kragten ef458b237c
Return if user is local only (#60917) 2021-12-03 16:34:26 +01:00
jjlawren b883014ed4
Add Sonos subwoofer and surround on/off controls (#60918) 2021-12-03 16:05:40 +01:00
epenet e64f901e92
Use dataclass properties in zwave_js (#60913)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-03 14:47:56 +01:00
epenet 358922db56
Use dataclass for HassioServiceInfo (#60824)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-03 14:05:56 +01:00
Joakim Sørensen d784c8dd1a
Remove Supervisor panel title and icon (#60894) 2021-12-03 10:35:57 +01:00
Marvin Wichmann 707fe67c00
Move StrEnum to homeassistant.backports and move Platform to homeassistant.const (#60880)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-12-03 09:31:17 +01:00
Jan Bouwhuis 3188a364e2
Add template filters pack and unpack (#60836)
* add pack and unpack template filters

* Add unpack test with offset

* use unpack_from

* Simplify unpack_from statement
2021-12-03 08:58:15 +01:00
epenet c04bfcc7f4
Use dataclass properties in devolo_home_network tests (#60889)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-03 08:51:42 +01:00
epenet b70d24394e
Use dataclass properties in homekit_controller tests (#60891)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-03 08:51:13 +01:00
epenet 2da9a51919
Use dataclass properties in keenetic_ndms2 tests (#60892)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-03 08:50:52 +01:00
Erik Montnemery 9f4a99fe81
Revert "Add bytes support for bitwise template operations" (#60854) 2021-12-03 08:50:29 +01:00
epenet a64ff2ae27
Use dataclass properties in system_bridge tests (#60888)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-03 08:49:35 +01:00
Erik Montnemery 0e3bc21d54
Teach state and numeric_state conditions about entity registry ids (#60841) 2021-12-02 14:55:12 -08:00
Erik Montnemery a07f75c6b0
Revert "Allow template int filter to render from a bytes based integer" (#60855) 2021-12-02 14:37:19 -08:00
Franck Nijhof 3c66706a49
Clean up deprecated sanitize_filename and sanitize_path (#60859) 2021-12-02 15:35:11 -05:00
epenet 9e96f3e227
Use HassioServiceInfo in deconz tests (#60868) 2021-12-02 10:33:23 -10:00
J. Nick Koston d7c4a669f1
Revert "Use HassioServiceInfo in mqtt tests" (#60867) 2021-12-02 10:13:41 -10:00
epenet 37200decf9
Use HassioServiceInfo in mqtt tests (#60865) 2021-12-02 10:10:50 -10:00
epenet 272b147550
Use HassioServiceInfo in adguard tests (#60866) 2021-12-02 10:10:15 -10:00
epenet ade228ebc6
Use HassioServiceInfo in motioneye tests (#60861) 2021-12-02 10:09:26 -10:00
epenet 2be939b45b
Use HassioServiceInfo in zwave_js tests (#60863) 2021-12-02 20:57:45 +01:00
epenet dff624f371
Use HassioServiceInfo in ozw tests (#60864) 2021-12-02 20:56:54 +01:00
epenet 0723b1c539
Introduce HassioServiceInfo (#60844)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-02 11:17:54 -08:00
Erik Montnemery 5b8d081441
Teach zone trigger about entity registry ids (#60838) 2021-12-02 10:28:21 -08:00
Erik Montnemery 411b0f0b15
Generate external statistics in demo component (#58470) 2021-12-02 09:55:46 -08:00
J. Nick Koston 8e0ef52cc8
Ensure sonos ssdp callbacks use dataclass methods (#60782) 2021-12-02 09:53:08 -08:00
epenet 0c18d710cc
Use dataclass properties in yamaha_musiccast (#60787)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-02 09:50:35 -08:00
Erik Montnemery 36734972f0
Teach numeric state trigger about entity registry ids (#60835) 2021-12-02 09:45:40 -08:00
Ville Skyttä 4107063a5a
Make entity registry disabled_by an enum (#60424) 2021-12-02 18:02:29 +01:00
Matt 7019c524fa
Add configuration_url to Forecast.Solar integration (#60384)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-12-02 16:36:41 +01:00