Commit Graph

20631 Commits (266e4f0c8bbdd9dbb1252168a21b44a98dec0680)

Author SHA1 Message Date
jayme-github 850dac0655
Don't overwrite target temperature by setting hvac mode in AVM Fritz!SmartHome (#112119) 2024-04-02 20:14:02 +02:00
atlflyer ef7836be73
Add icon to command_line cover config (#114645)
* Add icon to command_line cover config

* Remove unwanted #noqa tag

* Remove redundancy from new test name

* Apply requested changes
2024-04-02 20:59:57 +03:00
Robert Resch 17625dc74d
Fix Google translate TTS test race condition (#114656) 2024-04-02 18:52:41 +02:00
Paulus Schoutsen 52bd3efad9
Clean up unnecessary setup calls in tests (#114644) 2024-04-02 17:30:41 +02:00
Joost Lekkerkerker 0b7d9d6c44
Remove YAML configuration from Withings (#114626)
* Remove YAML configuration from Withings

* Remove YAML configuration from Withings

* Remove YAML configuration from Withings
2024-04-02 13:36:44 +02:00
Brett Adams f36c37a3b7
Fix battery heater in Tessie (#114568) 2024-04-02 12:23:08 +02:00
Jan Bouwhuis acf2f855fe
Raise ServiceValidationError on number out of range exception (#114589) 2024-04-02 12:22:00 +02:00
Joakim Sørensen a1ae4ec23d
Add sensor entities to Traccar Server (#111374) 2024-04-02 12:11:28 +02:00
Joost Lekkerkerker 21c7cc3250
Bump roombapy to 1.8.1 (#114478)
* Bump roombapy to 1.7.0

* Bump

* Bump

* Fix
2024-04-02 11:15:52 +02:00
Franck Nijhof 4a93b4a4b4
Add floor selector (#114614) 2024-04-02 10:43:14 +02:00
Robert Resch 67c334f842
Fix ruff issue in sonos (#114616) 2024-04-02 10:30:01 +02:00
Maciej Bieniek c8f282c8bc
Improve Shelly RPC device update progress (#114566)
Co-authored-by: Shay Levy <levyshay1@gmail.com>
Co-authored-by: Maciej Bieniek <478555+bieniu@users.noreply.github.com>
2024-04-02 10:15:58 +02:00
Pete Sage 31cd41adb8
Display sonos album title with URL encoding (#113693)
* unescape the title

When extracting the title from the item_id, it needs to be unescaped.

* sort imports
2024-04-02 10:11:45 +02:00
mkmer 078535e1d6
Add diagnostic platform to Whirlpool (#114578)
* Add diagnostic platform and tests

* lowercase variable

* Correc doc string
2024-04-02 09:41:40 +02:00
Erik Montnemery 0030c97f59
Tweak integration sensor (#114384)
* Tweak integration sensor

* Improve tests
2024-04-02 09:19:25 +02:00
Jan-Philipp Benecke c2ffed9b2d
Use switch entities instead of toggle entities in tests (#114585) 2024-04-02 08:25:28 +02:00
J. Nick Koston 5856bbc07b
Add missing platforms_exist guard to check_config (#114600)
* Add missing platforms_exist guard to check_config

related issue #112811

When the exception hits, the config will end up being saved in the traceback
so the memory is never released.

This matches the check_config code to homeassistant.config to avoid having
the exception thrown.

* patch

* merge branch
2024-04-01 21:37:30 -04:00
J. Nick Koston b12c69accb
Fix memory leak when importing a platform fails (#114602)
* Fix memory leak when importing a platform fails

re-raising ImportError would trigger a memory leak

* fixes, coverage

* Apply suggestions from code review
2024-04-01 21:36:48 -04:00
J. Nick Koston ce9d4c8683
Fix flakey cast discovery stop test (#114605)
https://github.com/home-assistant/core/actions/runs/8515215623/job/23322322954?pr=114602
2024-04-01 21:34:54 -04:00
Paulus Schoutsen d2e4f5f36e
Add conversation entity (#114518)
* Default agent as entity

* Migrate constant to point at new value

* Fix tests

* Fix more tests

* Move assist pipeline back to cloud after dependenceis
2024-04-01 21:34:25 -04:00
Martin Hjelmare b1af590eed
Fix reolink media source data access (#114593)
* Add test

* Fix reolink media source data access
2024-04-02 00:14:13 +02:00
Sid 304ed8bf3d
Unignore Ruff PLC in tests (#114572) 2024-04-01 21:28:54 +02:00
J. Nick Koston 96120b64e0
Fix missing mocking in nextdns tests (#114541) 2024-04-01 06:53:49 -10:00
Michael 2e11a61726
Automatic cleanup of entity and device registry in Tankerkoenig (#114573) 2024-04-01 16:04:18 +02:00
J. Nick Koston ea7f2af966
Fix missing mocking in blink tests (#114540)
extracted from #114539
2024-04-01 11:23:38 +02:00
Sid d5f883fbf0
Unignore Ruff PLR in tests (#114470)
* Unignore Ruff PLR in tests

* Address review comments

* review comments

* fix import

* Update test_api.py

* Update test_api.py

* Update test_api.py
2024-04-01 11:11:59 +02:00
J. Nick Koston be398e0a3f
Fix flakey sonos test test_creating_entry_sets_up_media_player (#114539) 2024-03-31 13:49:24 -10:00
Jan-Philipp Benecke 04786e019a
Use device registry mock instead of `hass.helpers` in traccar_server tests (#114532) 2024-04-01 00:42:46 +02:00
Jan-Philipp Benecke ecf286cd81
Avoid use of `hass.helpers` in plugwise test (#114534) 2024-04-01 00:41:47 +02:00
Jan-Philipp Benecke 0238c2ea9e
Use device registry mock instead of `hass.helpers` in dsmr tests (#114535) 2024-04-01 00:41:06 +02:00
Robert Svensson 05d40fbc4c
Bump axis to v60 (#114544)
* Improve Axis MQTT support

* Bump axis to v60
2024-04-01 00:24:41 +02:00
Jan-Philipp Benecke f08af5dc6d
Avoid use of `hass.helpers` in _mqtt_mock_entry fixture (#114536) 2024-03-31 11:33:59 -10:00
Thomas55555 5eb4cf6a05
Add error sensor for Husqvarna Automower (#113165)
* Add error sensor for Husqvarna Automower

* Apply suggestions from code review

Co-authored-by: Jan-Philipp Benecke <github@bnck.me>

* address review

* Add restricted reason sensor

* ruff

* pin options

---------

Co-authored-by: Jan-Philipp Benecke <github@bnck.me>
2024-03-31 20:06:30 +02:00
wittypluck 7919ca63d0
Add uptime sensor to Glances (#111402)
* Add uptime sensor to Glances

* Merge upstream

* Merge upstream

* Fix coverage

* Add uptime sensor to Glances

* Merge upstream

* Merge upstream

* Fix coverage

* Move most uptime specific code to DataUpdateCoordinator

* Add last_reported after merge with upstream

* Add unit tests for uptime sensor

* Add unit tests for uptime sensor

* Add unit tests for uptime sensor

* Add unit tests for uptime sensor

* Move update code out of getter native_value()

* Add unit tests for uptime sensor

* Update uptime method signatures

* Set uptime icon in icons.json

* Use freezer.tick for uptime tests

* Frozen time test fails on github

* Add MIN_UPTIME_VARIATION const value

* Only update uptime on startup or when remote server restarts

* Fix for 0 values

* Set value to None to set state to Unknown if key is not found

* Add unit test for uptime change

* Code reduction

---------

Co-authored-by: J. Nick Koston <nick@koston.org>
Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2024-03-31 20:04:39 +02:00
Joost Lekkerkerker 52741d7114
Add single config entry to Analytics insights (#114427)
* Add single config entry to Analytics insights

* Add single config entry to Analytics insights

* Add single config entry to Analytics insights
2024-03-31 15:47:24 +02:00
Jan-Philipp Benecke d5da0a053b
Deprecate `hass.helpers` (#114484)
* Deprecate hass.helpers

* Patch

* Patch _REPORTED_INTEGRATIONS set in test

* Fix test

* Update version
2024-03-31 11:44:11 +02:00
Sid d846676e84
Enable first batch of Ruff RET rules (#114480)
* Enable first batch of Ruff RET rules

* disable pylint rules
2024-03-31 11:30:59 +02:00
Jan-Philipp Benecke 6e3e09f2c3
Use entity & device registry mocks instead of `hass.helpers` in airthings_ble tests (#114520) 2024-03-31 09:08:07 +02:00
J. Nick Koston 5038a035bd
Detect blocking module imports in the event loop (#114488) 2024-03-30 19:51:31 -10:00
Paulus Schoutsen f01235ef74
Re-organize conversation integration (#114502)
* Re-organize conversation integration

* Clean up 2 more imports

* Re-export models

* Fix imports

* Uno mas

* Rename agents to models

* Fix cast test that i broke?

* Just blocking till I'm done

* Wrong place
2024-03-31 00:05:25 -04:00
J. Nick Koston f0b07ae942
Add pytest rewrite for wemo tests that use entity_test_helpers (#114516) 2024-03-30 17:35:49 -10:00
TheJulianJES b0a1450a2b
Fix ZHA websocket API test (#114495)
* Fix result overwriting expected config

* Use `BASE_CUSTOM_CONFIGURATION` for initial/expected config
2024-03-31 00:17:09 +01:00
Michael Hansen d23b22b566
Add initial support for floors to intents (#114456)
* Add initial support for floors to intents

* Fix climate intent

* More tests

* No return value

* Add requested changes

* Reuse event handler
2024-03-30 16:59:20 -04:00
Bruno Henrique 9f9a141112
Add UniFi WLAN Password sensor (#114419)
* Adding UniFi WLAN Password Sensor

* Adding UniFi WLAN Password Sensor

* Adding UniFi WLAN Password Sensor

* Adding UniFi WLAN Password Sensor

Co-authored-by: Robert Svensson <Kane610@users.noreply.github.com>

* Adding UniFi WLAN Password Sensor

Co-authored-by: Robert Svensson <Kane610@users.noreply.github.com>

* Adding UniFi WLAN Password Sensor

* Adding UniFi WLAN Password Sensor

* Adding UniFi WLAN Password Sensor

---------

Co-authored-by: Robert Svensson <Kane610@users.noreply.github.com>
2024-03-30 19:49:33 +01:00
J. Nick Koston d63adb6350
Improve sonos test synchronization (#114468) 2024-03-30 06:34:47 -10:00
Shay Levy 3e99afdd54
Cleanup Shelly RGBW light entities (#114410) 2024-03-30 18:48:57 +03:00
Bruno Henrique 53f262095c
Add UniFi WLAN regenerate password button (#114422)
* Adding UniFi WLAN Change Password Button

Co-authored-by: Robert Svensson <Kane610@users.noreply.github.com>

* Adding UniFi WLAN Regenerate Password Button

Co-authored-by: Robert Svensson <Kane610@users.noreply.github.com>

---------

Co-authored-by: Robert Svensson <Kane610@users.noreply.github.com>
2024-03-30 15:53:23 +01:00
Joost Lekkerkerker b7527feb5f
Rework opensky tests (#114441)
* Rework opensky tests

* Rework opensky tests

* Fix
2024-03-30 14:52:33 +01:00
Sid 6587ee20db
Enable Ruff TRY300 (#114437)
* Enable Ruff TRY300

* Update validation.py

* Address review comments
2024-03-30 10:37:59 +01:00
J. Nick Koston 9a79320861
Mark executor jobs as background unless created from a tracked task (#114450)
* Mark executor jobs as background unless created from a tracked task

If the current task is not tracked the executor job should not
be a background task to avoid delaying startup and shutdown.

Currently any executor job created in a untracked task or
background task would end up being tracked and delaying
startup/shutdown

* import exec has the same issue

* Avoid tracking import executor jobs

There is no reason to track these jobs as they are always awaited
and we do not want to support fire and forget import executor jobs

* fix xiaomi_miio

* lots of fire time changed without background await

* revert changes moved to other PR

* more

* more

* more

* m

* m

* p

* fix fire and forget tests

* scrape

* sonos

* system

* more

* capture callback before block

* coverage

* more

* more races

* more races

* more

* missed some

* more fixes

* missed some more

* fix

* remove unneeded

* one more race

* two
2024-03-30 00:16:53 -04:00
Sid aec7a67a58
Unignore Ruff PLE, PLW in tests (#114406)
* Unignore Ruff PLE, PLW in tests

* fix tests
2024-03-29 23:58:30 +01:00
Jan Bouwhuis 5e3ce80488
Remove stale test for mqtt climate (#114443) 2024-03-29 16:01:50 +01:00
Luca Angemi 54c5f18aac
Add `uid` attribute to `imap_content` event data (#114432)
* Add uid to imap event

* Add ´uid´ to tests

* Update test_init.py
2024-03-29 15:04:24 +01:00
Sid dc557fca1e
Refactor conversation mock_agent (#114428)
* Refactor conversation mock_agent

* Address review comments
2024-03-29 14:38:58 +01:00
Jan-Philipp Benecke 8d6d70d6b5
Use `setup_test_component_platform` helper for select entity component tests instead of `hass.components` (#114412)
* Use `setup_test_component_platform` helper for select entity component tests instead of `hass.components`

* Use _values instead of _attr_current_option

* Clean up

* Set default current_option for second mock entity

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-03-29 14:36:33 +01:00
Mischa Siekmann 6d54f686a6
Add Integration for Energenie Power-Sockets (#113097)
* Integration for Energenie Power-Strips (EGPS)

* cleanups reocommended by reviewer

* Adds missing exception handling when trying to send a command to an unreachable device.

* fix: incorrect handling of already opened devices in pyegps api. bump to pyegps=0.2.4

* Add blank line after file docstring, and other cosmetics

* change asyncio.to_thread to async_add_executer_job

* raises HomeAssistantError EgpsException in switch services.

* switch test parameterized by entity name

* reoved unused device registry

* add translation_key and update_before_add

* bump pyegps dependency to version to 0.2.5

* combined get_device patches and put into conftest.py

* changed switch entity to use _attr_is_on and cleanups

* further cleanup

* Apply suggestions from code review

* refactor: rename egps to energenie_power_sockets

* updated test snapshot

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-03-29 13:29:14 +01:00
Steven B 72614c86c2
Bump python-ring-doorbell to 0.8.8 (#114431)
* Bump ring_doorbell to 0.8.8

* Fix intercom history test for new library version

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-03-29 12:47:21 +01:00
Joost Lekkerkerker ed7e5c4de6
Add single config entry to Mullvad (#114426)
* Add single config entry to Mullvad

* Add single config entry to Mullvad

* Add single config entry to Mullvad

* Fix
2024-03-29 11:04:37 +01:00
Jan-Philipp Benecke 247ee6e4f0
Address late review comments for fan entity component test (#114425)
* Address late review comments for fan entity component test

* Update tests/components/fan/common.py

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

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-03-29 10:18:57 +01:00
Jan-Philipp Benecke 045dc3f1fb
Use `setup_test_component_platform` helper for datetime entity component tests instead of `hass.components` (#114415) 2024-03-29 07:51:10 +01:00
Jan-Philipp Benecke 74d614243b
Use `setup_test_component_platform` helper for date entity component tests instead of `hass.components` (#114413)
* Use `setup_test_component_platform` helper for date entity component tests instead of `hass.components`

* Remove missing
2024-03-29 07:43:19 +01:00
Jan-Philipp Benecke a102230498
Use `setup_test_component_platform` helper for time entity component tests instead of `hass.components` (#114411) 2024-03-29 07:34:00 +01:00
Jan-Philipp Benecke ae635a5586
Use `setup_test_component_platform` helper for fan entity component tests instead of `hass.components` (#114409) 2024-03-29 07:32:41 +01:00
Sid a5b609f081
Enable ruff TRY401 (#114395)
* Enable ruff TRY401

* fix tests
2024-03-29 07:20:36 +01:00
Jan-Philipp Benecke 530552b4f5
Use `mock_platform` for device_tracker entity component tests instead of `hass.components` (#114398)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-03-28 15:23:21 -10:00
Lennard Beers 282cbfc048
Add eq3btsmart integration (#109291)
Co-authored-by: Sid <27780930+autinerd@users.noreply.github.com>
Co-authored-by: J. Nick Koston <nick@koston.org>
2024-03-28 15:20:56 -10:00
Jan-Philipp Benecke 3fd24989c6
Use `setup_test_component_platform` helper for text entity component tests instead of `hass.components` (#114400) 2024-03-28 21:08:25 +01:00
Marc Mueller 443bfee16d
Replace partial annotations (#114177) 2024-03-28 18:33:39 +01:00
Michael Hansen 6fafb9c9b4
Filter preferred TTS format options if not supported (#114392)
Filter preferred format options if not supported
2024-03-28 11:09:15 -05:00
Franck Nijhof 3df03f5be5
Fix area search for entities of devices (#114394) 2024-03-28 16:57:29 +01:00
Martin Hjelmare f9aa7d34f8
Use fallback voice for selected language in cloud (#114246)
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2024-03-28 15:44:50 +01:00
Martin Hjelmare 52ca14de48
Add matter zeroconf (#114385)
* Add matter zeroconf

* Clean up
2024-03-28 14:57:18 +01:00
Mark Adkins 2511a9a087
Add SharkIQ room targeting (#89350)
* SharkIQ Dep & Codeowner Update

* Update code owners

* SharkIQ Room-Targeting Support

* Add Tests for New Service

* Remove unreachable code

* Refine tests to reflect unreachable code changes

* Updates based on PR comments

* Updates based on PR review comments

* Address issues found in PR Review

* Update Exception type, add excption message to strings.  Do not save room list in state history.

* Update message to be more clear that only one faild room is listed

* couple more updates based on comments

---------

Co-authored-by: jrlambs <jrlambs@gmail.com>
Co-authored-by: Robert Resch <robert@resch.dev>
2024-03-28 14:19:25 +01:00
Jan-Philipp Benecke 71a0a7fe00
Use `setup_test_component_platform` helper for switch entity component tests instead of `hass.components` (#114305)
* Use `setup_test_component_platform` helper for switch entity component tests instead of `hass.components`

* Do not import fixtures

* Re-add switch.py to testing_config as stub

* Rename to mock_toggle_entities
2024-03-28 13:56:23 +01:00
Lucas Mindêllo de Andrade 5fb12c93aa
SunWEG reauth flow (#105861)
* feat(sunweg): reauth flow

* fix(sunweg): autentication as sunweg 2.1.0

* fix: configflowresult

* chore(sunweg): dedupe code

* chore(sunweg): using entry_id instead of unique_id

* test(sunweg): added test launch reauth flow

* chore(sunweg): moved test_reauth_started test

* chore(sunweg): formatting

* chore(sunweg): formating

---------

Co-authored-by: J. Nick Koston <nick@koston.org>
2024-03-28 13:53:32 +01:00
Erik Montnemery 5b98a8458f
Improve device class of utility meter (#114368) 2024-03-28 13:24:44 +01:00
Jan-Philipp Benecke 22b14d83e8
Use `setup_test_component_platform` helper for sensor entity component tests instead of `hass.components` (#114316)
* Use `setup_test_component_platform` helper for sensor entity component tests instead of `hass.components`

* Missing file

* Fix import

* Remove invalid device class
2024-03-28 12:07:55 +01:00
G Johansson fc4d960d17
Add translation support to Config Entry errors (#106305)
* Config Entry error translation

* split key and placeholders

* Fix config entries tests

* translation optional

* Mods
2024-03-28 10:52:21 +01:00
Erik Montnemery aa9d58df67
Improve utility meter restore state tests (#114356) 2024-03-28 10:42:52 +01:00
Marc Mueller a29dc86f62
Fix ruff error (#114364) 2024-03-28 10:31:42 +01:00
J. Nick Koston bec45dacf0
Add additional coverage to the ESPHome manager (#114265) 2024-03-27 20:52:45 -10:00
J. Nick Koston f4922edb4b
Fix empty delays in script helper (#114346)
fixes
```
Logger: homeassistant.components.automation.kamermaster_knop_4_acties_licht
Bron: components/automation/__init__.py:726
integratie: Automatisering (documentatie, problemen)
Eerst voorgekomen: 22:17:29 (5 gebeurtenissen)
Laatst gelogd: 22:59:24

While executing automation automation.kamermaster_knop_4_acties_licht
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/automation/__init__.py", line 726, in async_trigger
    return await self.action_script.async_run(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 1645, in async_run
    return await asyncio.shield(create_eager_task(run.async_run()))
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 454, in async_run
    await self._async_step(log_exceptions=False)
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 506, in _async_step
    self._handle_exception(
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 536, in _handle_exception
    raise exception
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 504, in _async_step
    await getattr(self, handler)()
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 626, in _async_delay_step
    if timeout_future.done():
       ^^^^^^^^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'done'
```
2024-03-28 00:29:43 -04:00
Erik Montnemery 4d7a434254
Don't access States.last_reported_ts before it's added (#114333) 2024-03-28 00:44:01 +01:00
Marcel van der Veldt 0e12fea0cb
Fix Matter airconditioner discovery of climate platform (#114326)
* Discover Thermostat platform for Room Airconditioner device

* add test

* Adjust docstring

Co-authored-by: TheJulianJES <TheJulianJES@users.noreply.github.com>

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: TheJulianJES <TheJulianJES@users.noreply.github.com>
2024-03-27 22:35:08 +01:00
Marc Mueller 1120745d4e
Update SignalType imports (#114287) 2024-03-27 19:41:11 +01:00
puddly fc34453caa
Support the Home Assistant Connect ZBT-1 (#114213) 2024-03-27 18:20:48 +01:00
Joost Lekkerkerker e626cd12aa
Fix feedback in ROVA (#114308) 2024-03-27 18:01:07 +01:00
David F. Mulcahey c518acfef3
Defensively validate ZHA quirks v2 supplied entity metadata (#112643) 2024-03-27 17:48:43 +01:00
G Johansson 65230908c6
Remove deprecated forecast attribute from WeatherEntity (#110761)
* Remove deprecated forecast attribute from WeatherEntity

* Fix some

* Ruff

* ipma

* buienradar

* some more

* Some more

* More and more

* strings

* attr_forecast

* Fix nws

* Fix

* remove from coverage

* Remove recorder test

* Review comments
2024-03-27 16:51:29 +01:00
Michael Hansen e4d2985589
Bump intents to 2024.3.27 (#114312) 2024-03-27 16:43:15 +01:00
Joost Lekkerkerker 5aabb2a920
Finish ROVA init tests (#114315)
* Finish ROVA init tests

* Finish ROVA init tests

* Finish ROVA init tests
2024-03-27 16:36:42 +01:00
Joost Lekkerkerker 6289082dab
Migrate Rova to has entity name (#114303) 2024-03-27 16:20:51 +01:00
G Johansson c21d508c2d
Start deprecation of auxiliary heater in ClimateEntity (#112532)
* Start deprecation of auxiliary heater in ClimateEntity

* No issue for core integrations

* Remove unneded strings

* Move report to state_attributes
2024-03-27 16:10:32 +01:00
MarkGodwin 834f45397d
Add support for PoE control of TP-Link Omada Gateways (#114138)
Co-authored-by: Robert Resch <robert@resch.dev>
Co-authored-by: J. Nick Koston <nick@koston.org>
2024-03-27 16:05:14 +01:00
Erik Montnemery 23e9be756d
Fix exception when logging out from cloud (#114306)
* Fix exception when logging out from cloud

* Add test
2024-03-27 16:02:47 +01:00
Joost Lekkerkerker a9fd4e45cd
Raise issue if not Rova area anymore (#114309) 2024-03-27 15:51:49 +01:00
Tereza Tomcova a00c1fa241
Bump pyprusalink to 2.1.1 and support Prusa MK3 (#114210)
Co-authored-by: Robert Resch <robert@resch.dev>
Co-authored-by: J. Nick Koston <nick@koston.org>
2024-03-27 15:26:44 +01:00
Jan-Philipp Benecke 5316b94705
Use `setup_test_component_platform` helper for alarm_control_panel entity component tests instead of `hass.components` (#114301) 2024-03-27 14:36:31 +01:00
Jan-Philipp Benecke 6313571fbc
Use `setup_test_component_platform` helper for binary_sensor entity component tests instead of `hass.components` (#114293) 2024-03-27 14:24:02 +01:00
Joost Lekkerkerker 45da6f8f2c
Add tests to Rova (#114285) 2024-03-27 13:00:02 +01:00
Erik Montnemery a3059fe504
Record state.last_reported (#114201)
* Record state.last_reported

* Include last_reported in parts of the history API

* Use a bulk update

* fix refactoring error

---------

Co-authored-by: J. Nick Koston <nick@koston.org>
2024-03-27 12:48:06 +01:00
Jan-Philipp Benecke 34cf0c5721
Use `setup_test_component_platform` func for cover entity component tests instead of `hass.components` (#114010)
* Use `mock_platform` for cover entity component tests instead of `hass.components`

* Remove setup fixture and use helper function

* Remove is_on from MockCover

* Run ruff

* Do not override state in `MockCover` in cover tests

* Remove is_on from MockCover
2024-03-27 12:20:19 +01:00
Marc Mueller 3929273b41
Allow float for int argument type [pylint plugin] (#114105) 2024-03-27 11:51:27 +01:00
Jan-Philipp Benecke 5c97049f2e
Do not override state property in `MockEntity` (#114231)
Do not override state in `MockEntity`
2024-03-27 11:36:00 +01:00
Marc Mueller 44eeb2eb5e
Allow Humidifier.current_humidity to be a float (#111297)
* Allow Humidifier.current_humidity to be a float

* Code review

* Allow climate humidity values to be float

* Update demo integration
2024-03-27 11:19:20 +01:00
G Johansson b190cdceaf
Remove hourly weather entity from metoffice (#112452) 2024-03-27 11:06:31 +01:00
Shai Ungar 69356300f0
Address late review of 17track config flow (#114283)
* some fixes for 17track

* remove await

* fix test
2024-03-27 11:06:13 +01:00
J. Nick Koston 2421b42f10
Refactor yeelight scanner to avoid creating tasks to wait for scanner start (#113919) 2024-03-27 10:17:35 +01:00
Franck Nijhof dd2d79b77e
Refactor/fix search component, including labels & floors support (#114206)
Co-authored-by: TheJulianJES <TheJulianJES@users.noreply.github.com>
Co-authored-by: Robert Resch <robert@resch.dev>
2024-03-27 09:39:05 +01:00
Marc Mueller 1d2c2d2055
Move SignalTypes to util (#114236) 2024-03-27 08:41:44 +01:00
Michael Hansen 72fed878b4
Add Ollama conversation agent (#113962)
* Add ollama conversation agent

* Change iot class

* Much better default template

* Slight adjustment to prompt

* Make casing consistent

* Switch to ollama Python fork

* Add prompt to tests

* Rename to "ollama"

* Download models in config flow

* Update homeassistant/components/ollama/config_flow.py

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2024-03-26 16:15:20 -05:00
Jan-Philipp Benecke f94f1fb826
Use `setup_test_component_platform` func for number entity component tests instead of `hass.components` (#114017)
* Use `setup_test_component_platform` fixture for number entity component tests instead of `hass.components`

* Now function

* Ruff format
2024-03-26 21:56:38 +01:00
Jan-Philipp Benecke e80d73783c
Do not late import config_entry in `setup_test_component_platform` test helper (#114260) 2024-03-26 21:54:09 +01:00
Franck Nijhof 9a32d1bbd5
Add label selector (#111029)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2024-03-26 20:31:06 +01:00
Jan-Philipp Benecke dce3bde0ab
Use `setup_test_component_platform` helper for update entity component tests instead of `hass.components` (#114203)
* Use `setup_test_component_platform` helper for update entity component tests instead of `hass.components`

* Run ruff format
2024-03-26 20:20:08 +01:00
Ron Weikamp e1036b3af0
Refactor Riemann sum integral sensor to prepare for time based trigger (#113932)
* Refactor Integration sensor.

* Use local simple function to verify the State is numeric.

* Merge two methods to one.

* Method renaming: _handle_state_change

* Move async_write_ha_state to the caller.

* Add comment on why attr_icon is set to None

* Remove possible None type of State in validation methods.

* Use a dict to map method name to method class.

* Explain derived unit after integration.

* Renaming to _multiply_unit_with_time and elaborate in docstring.

* Set integral unit_of_measurement explicitly to None if source unit_of_measurement is None

* One function for unit of measurement related steps.

* Improve docstring of _multiply_unit_with_time

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

* Apply f-string suggestions from code review

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

* Be more clear in comment about removing the sensors icon default.

* Apply suggestions from code review

Co-authored-by: Diogo Gomes <diogogomes@gmail.com>

* Update homeassistant/components/integration/sensor.py

* Update homeassistant/components/integration/sensor.py

* Update homeassistant/components/integration/sensor.py

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
Co-authored-by: Diogo Gomes <diogogomes@gmail.com>
2024-03-26 19:09:48 +01:00
Franck Nijhof c247534731
Default floor level to None (and allow unsetting it) (#114249) 2024-03-26 18:58:25 +01:00
Marc Mueller c8260a5966
Remove test cases for task eager_start <3.12 (#114243) 2024-03-26 15:52:38 +01:00
Marc Mueller eb81a4204e
Allow string formatting for dispatcher SignalType (#114174) 2024-03-26 10:38:29 +01:00
Erik Montnemery dd43947ca0
Add test to ensure non callback event filter is rejected (#114182) 2024-03-26 10:36:08 +01:00
Erik Montnemery bac527f289
Don't allow listening to state_reported in event triggers (#114191)
Co-authored-by: Robert Svensson <Kane610@users.noreply.github.com>
2024-03-26 10:35:47 +01:00
Duco Sebel 788813aad6
Implement Identify button and Cloud connection toggle for HomeWizard Watermeter (#113814) 2024-03-26 10:34:36 +01:00
Franck Nijhof 5c69e0d2c6
Add label template functions (#111024) 2024-03-26 10:32:29 +01:00
Joost Lekkerkerker ddee999843
Fix motion blinds formatting (#114222) 2024-03-26 09:57:19 +01:00
Lenn 70c4fa8475
Add Motionblinds BLE integration (#109497)
* initial fork

* intial tests

* Initial test coverage

* extra coverage

* complete config flow tests

* fix generated

* Update CODEOWNERS

* Move logic to PyPi library and update to pass config_flow test and pre-commit

* Remove Button, Select and Sensor platform for initial PR

* Update manifest.json

* Change info logs to debug in cover

* Use _abort_if_unique_id_configured instead of custom loop checking existing entries

* Change platforms list to PLATFORMS global

Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com>

* Remove VERSION from ConfigFlow

Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com>

* Replace all info logs by debug

* Use instance attributes in ConfigFlow

Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com>

* Add return type and docstring to init in ConfigFlow

* Add recovery to tests containing errors

* Make NoBluetoothAdapter and NoDevicesFound abort instead of show error

* Change info logs to debug

* Add and change integration type from hub to device

* Use CONF_ADDRESS from homeassistant.const

* Move cover attributes initialization out of constructor

* Change CONF_ADDRESS in tests from const to homeassistant.const

* Remove unused part of tests

* Change 'not motion_device' to 'motion_device is None'

* Change _attr_connection_type to _connection_type

* Add connections to DeviceInfo

* Add model to DeviceInfo and change MotionBlindType values

* Remove identifiers from DeviceInfo

* Move constants from const to library

* Move calibration and running to library, re-add all platforms

* Remove platforms from init

* Remove button platform

* Remove select platform

* Remove sensor platform

* Bump motionblindsble to 0.0.4

* Remove closed, opening and closing attribute default values

Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com>

* Remove CONFIG_SCHEMA from init

Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com>

* Remove unused platform attributes and icons

* Re-add _attr_is_closed to GenericBlind to fix error

* Use entry.async_create_background_task for library instead of entry.async_create_task

* Move updating of position on disconnect to library

* Remove type hints, keep for _attr_is_closed

* Use DISPLAY_NAME constant from library for display name

* Add TYPE_CHECKING condition to assert in config_flow

* Re-add CONFIG_SCHEMA to __init__ to pass hassfest

* Change FlowResult type to ConfigFlowResult

* Fix import in tests

* Fix ruff import

* Fix tests by using value of enum

* Use lowercase name of MotionBlindType enum for data schema selector and translation

* Fix using name instead of value for MotionBlindType

* Improve position None handling

Co-authored-by: starkillerOG <starkiller.og@gmail.com>

* Improve tilt None handling

Co-authored-by: starkillerOG <starkiller.og@gmail.com>

* Change BLIND_TO_ENTITY_TYPE name

* Set entity name of cover to None and use DeviceInfo name

* Add base entity

* Move async_update to base entity

* Move unique ID with suffix to base class

* Add entity.py to .coveragerc

* Remove extra state attribute connection type

* Remove separate line hass.data.setdefault(DOMAIN, {})

* Remove use of field for key and translation_key in MotionCoverEntityDescription

* Remove entity translation with extra state_attributes from strings.json

* Use super().__init__(device, entry)

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>

* Change if block in async_update_running

* Use if blocks in async_update_position

* Add additional scanner check before show_form

* Remove default value of device_class in MotionCoverEntityDescription

* Fix entry.data[CONF_BLIND_TYPE] uppercase

* Fix device info model name

* Bump motionblindsble to 0.0.5

* Fix tests

* Move entity_description to MotionblindsBLEEntity

* Change double roller blind name

* Bump motionblindsble to 0.0.6

* Fix ruff

* Use status_query for async_update

* Bump motionblindsble to 0.0.7

* Change bluetooth local name

* Set kw_only=True for dataclass

* Change name of GenericBlind

* Change scanner_count conditional

* Wrap async_register_callback in entry.async_on_unload

* Bump motionblindsble to 0.0.8

* Use set_create_task_factory and set_call_later_factory

* Update bluetooth.py generated

* Simplify COVER_TYPES dictionary

* Move registering callbacks to async_added_to_hass

* Remove check for ATTR_POSITION and ATTR_TILT_POSITION in kwargs

* Add naming consistency for device and entry

* Use if block instead of ternary for _attr_unique_id

* Improve errors ternary in config_flow

* Use set instead of list for running_type

* Improve errors ternary in config_flow

* Remove init from MotionblindsBLECoverEntity and move debug log to async_added_to_hass

* Update debug log create cover

* Fix ruff

* Use identity check instead of equals

* Use identity check instead of equals

* Change MotionblindsBLECoverEntityDescription name

* Change debug log text

* Remove ATTR_CONNECTION from const

* Add types for variables in async_setup_entry

* Add types for variables in async_setup_entry

* Change PositionBlind class name to PositionCover etc

* Improve docstrings

* Improve docstrings

---------

Co-authored-by: starkillerOG <starkiller.og@gmail.com>
Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com>
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-03-26 09:52:04 +01:00
J. Nick Koston 54a69a2687
Remove async_get_device_class_lookup from entity_registry (#114212)
This function was only ever used in homekit, and since there is
now an index of devices in the entity registry, homekit no longer
uses it.

I searched github code for all references to async_get_device_class_lookup
and the only think I could find using it were forks of core. It seems
unlikely that any custom components are affected by removing this
function
2024-03-26 09:22:53 +01:00
J. Nick Koston cabc4f797a
Preload storage for integrations we know we are going to setup (#114192) 2024-03-25 15:49:54 -10:00
Jan-Philipp Benecke 9580adfde9
Use new `setup_test_component_platform` helper instead of test fixture for light platform (#114200) 2024-03-26 00:17:16 +01:00
Joost Lekkerkerker 6bb4e7d62c
Bump ruff to 0.3.4 (#112690)
Co-authored-by: Sid <27780930+autinerd@users.noreply.github.com>
Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>
Co-authored-by: J. Nick Koston <nick@koston.org>
2024-03-26 00:02:16 +01:00
Jan-Philipp Benecke 2f0cfc8b61
Remove deprecated `hass.components` from system_health tests (#114207) 2024-03-26 00:39:31 +02:00
Jan Bouwhuis 18174ad47d
Improve test coverage mqtt discovery test (#114188) 2024-03-25 22:41:11 +01:00
Jan-Philipp Benecke 9b682388f5
Add generic test component platform setup function (#114016)
* Add generic entity platform setup fixture

* rename fixture

* No need for passing hass

* Make function instead of fixture

* Improve typing

* Use Sequence instead

* Migrate flux to use the new helper

* Use list instead

* Use Sequence instead
2024-03-25 21:36:17 +01:00
Erik Montnemery e2ee623d23
Add restrictions for listening to event_reported events (#114183)
* Add restrictions for listening to event_reported events

* Update homeassistant/core.py

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

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-03-25 19:16:50 +01:00
J. Nick Koston c3f4aca4e3
Add reauth support to NUT (#114131) 2024-03-25 07:59:46 -10:00
Robert Resch 135c40cad8
Add Ecovacs last job event entity (#113826)
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-03-25 18:31:04 +01:00
G Johansson 5e70faca5f
Refactor options flow in dnsip (#114058)
* Refactor options flow in dnsip

* Mods
2024-03-25 17:38:02 +01:00
Robert Svensson c1e1db9863
Adapt to Axis library file structure changes (#114181)
* Adapt to axis library file structure changes

* Bump axis to v59
2024-03-25 12:16:41 -04:00
Thomas55555 b71cbeff51
Bump aioautomower to 2024.3.4 (#114127)
* Bump aioautomower to 2024.3.4

* Update homeassistant/components/husqvarna_automower/sensor.py

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>

* adjust imports

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-03-25 16:11:12 +01:00
Kevin Stillhammer 3d6600364b
Bump pywaze to 1.0.0 (#108613) 2024-03-25 16:08:57 +01:00
Marc Mueller 81c34ac952
Fix spelling [docstrings + comments] (#114168) 2024-03-25 11:33:00 +01:00
Marc Mueller 9b7cc088be
Fix spelling [runtime] (#114169) 2024-03-25 11:32:50 +01:00
G Johansson 3ba1b82723
Remove hourly weather entity from met_eireann (#112449) 2024-03-25 11:30:50 +01:00
J. Nick Koston ada781025b
Avoid homekit random id generation for existing entries (#114144) 2024-03-25 11:28:26 +01:00
Bouwe Westerdijk ace21c876c
Bump plugwise to v0.37.1 (#113245) 2024-03-25 11:15:33 +01:00
Álvaro Fernández Rojas 33d9947a70
Add climate fan modes for Airzone Cloud Aidoo devices (#103574)
* airzone_cloud: climate: add Aidoo speeds support

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* Add suggested changes

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* airzone_cloud: climate: rename _set_fan_speeds()

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* airzone_cloud: climate: drop BASE_FAN_SPEEDS

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* airzone_cloud: climate: refactor FAN_AUTO speed

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* airzone_cloud: climate: document standard speeds replacement

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* airzone_cloud: climate: fix Homekit comment

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* airzone_cloud: climate: consistent fan speed names

Instead of mixing "low", "medium" and "high" with percentages, let's use only
percentages if there are more speeds.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

---------

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2024-03-25 10:50:04 +01:00
Jan Bouwhuis 19fa39d556
Generate ConfigValidationError message from English translations (#113844)
* Fetch ConfigValidationError message from translation cache

* Sync error logmessages with translation cache

* More sync

* Cleanup

* Remove unrelated change

* Follow up comments

* Rebase and improve contructor

* Improve name

* Rename to MULTIPLE_INTEGRATION_CONFIG_ERRORS
2024-03-25 10:39:30 +01:00
Christopher Bailey 3e01085c91
Add repair for UniFi Protect if RTSP is disabled on camera (#114088)
Co-authored-by: J. Nick Koston <nick@koston.org>
2024-03-24 17:30:52 -10:00
Yuxin Wang 76052a5385
Implement diagnostics platform for APCUPSD (#112284)
* Implement diagnostic platform for APCUPSd

* Put APCUPSd in gold quality scale

* Revert quality scale update

* Use snapshot testing for apcupsd

* Prettify the code
2024-03-24 23:40:41 +01:00
Jan Bouwhuis c94d8c541b
Fix google assistant diagnostics test (#114111)
Improve google assistant diagnostics test
2024-03-24 19:05:47 +01:00
Jan Bouwhuis 67ab49b825
Fetch ServiceNotFound message from translation cache and fix super (#114084)
* Fetch ServiceNotFound message from translation cache and fix super

* Fix tests trace component

* Fix script errors
2024-03-24 07:41:13 -10:00