55 Commits
Author SHA1 Message Date
epenetandGitHub 31c36beb2e Move DhcpServiceInfo to service_info helpers (#135658)
* Move DhcpServiceInfo to service_info helpers

* Fix mypy/pylint
2025-01-15 13:09:18 +01:00
epenetandGitHub 24680b731f Add missing hass type hint in component tests (f) (#124076) 2024-08-16 21:51:58 +02:00
tronikosandGitHub 1925614a14 Handle errors in Fully Kiosk camera (#121659) 2024-07-10 11:21:38 +02:00
Marc MuellerandGitHub 2f0dd6f704 Import Generator from collections.abc (2) (#120915) 2024-07-01 11:58:49 +02:00
tronikosandGitHub 725c309c0d Add image entity (screenshot) in Fully Kiosk Browser (#119622) 2024-06-22 19:37:18 +02:00
tronikosandGitHub cea7231aab Add notify entities in Fully Kiosk Browser (#119371) 2024-06-22 15:04:52 +02:00
tronikosandGitHub 9002d85f9b Support playback of videos in Fully Kiosk Browser (#119496) 2024-06-22 12:05:39 +02:00
tronikosandGitHub 6caf614efd Add camera entity in Fully Kiosk Browser (#119483) 2024-06-21 15:08:32 +02:00
Marc MuellerandGitHub 279483ddb0 Import Generator from typing_extensions (2) (#118989) 2024-06-06 17:24:22 +02:00
2a9d29c5f5 Fix Fully Kiosk set config service (#112840)
* Fixed a bug that prevented setting Fully Kiosk config values using a template

* Added test to cover change

* Fixed issue identified by Ruff

* Update services.py

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2024-05-15 15:01:55 +02:00
481de8cdc9 Ensure config entry operations are always holding the lock (#117214)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2024-05-12 08:20:08 +09:00
Joost LekkerkerkerandGitHub 906d3198e3 Use is in enum comparison in config flow tests F-J (#114670)
* Use right enum expression F-J

* Fix
2024-04-02 23:01:37 +02:00
SidandGitHub 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 KostonandGitHub 65358c129a Replace periodic tasks with background tasks (#112726)
* Phase out periodic tasks

* false by default or some tests will block forever, will need to fix each one manually

* kwarg works

* kwarg works

* kwarg works

* fixes

* fix more tests

* fix more tests

* fix lifx

* opensky

* pvpc_hourly_pricing

* adjust more

* adjust more

* smarttub

* adjust more

* adjust more

* adjust more

* adjust more

* adjust

* no eager executor

* zha

* qnap_qsw

* fix more

* fix fix

* docs

* its a wrapper now

* add more coverage

* coverage

* cover all combos

* more fixes

* more fixes

* more fixes

* remaining issues are legit bugs in tests

* make tplink test more predictable

* more fixes

* feedreader

* grind out some more

* make test race safe

* one more
2024-03-08 21:45:10 -05:00
Marc MuellerandGitHub 32f3f46542 Add empty line after module docstring (2) [tests.components] (#112737) 2024-03-08 19:16:21 +01:00
Marc MuellerandGitHub c88b337600 Add empty line after module docstring [tests f-k] (#112709) 2024-03-08 14:50:04 +01:00
J. Nick KostonandGitHub 52e8f7f865 Fix formatting of mac addresses from dhcp discovery mocking in fully_kiosk (#110573)
dhcp returns addresses in lowercase without :
2024-02-14 20:54:44 +01:00
Jan-Philipp BeneckeandGitHub 3342e6ddbd Avoid calling hass internals when adding mock config entry in Fully Kiosk (#110291) 2024-02-11 21:17:54 +01:00
Marc MuellerandGitHub 7a89e58873 Use builtin TimeoutError [e-i] (#109679) 2024-02-05 12:00:37 +01:00
Charles GarwoodandGitHub 40f914214b Fix Fully Kiosk Browser MQTT event callbacks with non-standard event topics (#105735) 2023-12-14 18:59:37 +01:00
d460eadce0 Add support to fully_kiosk for hybrid local push/pull switches using MQTT (#89010)
* Support hybrid local push/pull switches using MQTT

* Update homeassistant/components/fully_kiosk/entity.py

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

* Fix MQTT subscribe method

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-11-23 10:38:32 +01:00
7ef47da27d Add HTTPS support for Fully Kiosk (#89592)
* Add HTTPS support for Fully Kiosk with optional certificate verification.

* All pytests passing.

* Better readability for url parameter of DeviceInfo

* All pytests passing with latest fixes from upstream

* Removing fully_kiosk/translations

* Rebasing

* Added extra error detail when the integration config flow fails

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-11-13 17:40:57 +01:00
Jan-Philipp BeneckeandGitHub 04a497343d Update f-g* tests to use entity & device registry fixtures (#103841) 2023-11-12 13:07:38 +01:00
Erik MontnemeryandGitHub 3b07181d87 Use freezegun in fully_kiosk tests (#99031) 2023-08-25 09:03:51 -05:00
Erik MontnemeryandGitHub 7539cf25be Don't require passing identifiers to DeviceRegistry.async_get_device (#96479)
* Require keyword arguments to DeviceRegistry.async_get_device

* Update tests

* Update tests

* Don't enforce keyword arguments
2023-07-13 13:39:25 -04:00
34827571ba Add set_config service to Fully Kiosk Browser integration (#95318)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-06-27 20:42:18 +02:00
Joost LekkerkerkerandGitHub e7cc839a96 Add entity translations to Fully Kiosk (#95368) 2023-06-27 17:41:41 +02:00
Haim GelfenbeynandGitHub 0c66ccebd1 Verify that the MAC address that Fully Kiosk reported is usable (#94887) 2023-06-27 13:34:07 +02:00
d3bf52c136 Register Fully Kiosk services regardless of setup result (#88647)
* Register services at integration level

If HA is unable to connect to Fully Kiosk, the services don't get
registered. This can cause repair to create notifications saying
that the 'fully_kiosk.load_url' service is unknown.

Fixes #85444

* Validate config entry is loaded

* Refactor service invocation

Raises `HomeAssistantError` when the user provides an device id that is
not in the device registry or a device that is not a Fully Kiosk
device. If the device's config entry is not loaded, a warning is
logged.

* Update homeassistant/components/fully_kiosk/services.py

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

* Assert HomeAssistantError when integration unloaded

* Remove unused import

* Set CONFIG_SCHEMA

* Update homeassistant/components/fully_kiosk/__init__.py

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

* Add test for non fkb devices targets in service calls

* Apply suggestions from code review

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-06-19 13:12:04 +02:00
12129e9d21 Update service call return values and error handling (#94657)
* Update return signature of service calls

* Add timeout error handling in websocket api for service calls

* Update recorder tests to remove assertion on service call

* Remove timeout behavior and update callers that depend on it today

* Fix tests

* Add missing else

* await coro directly

* Fix more tests

* Update the intent task to use wait instead of timeout

* Remove script service call limits and limit constants

* Update tests that depend on service call limits

* Use wait instead of wait_for and add test

* Update homeassistant/helpers/intent.py

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

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-06-16 07:01:40 -07:00
Ville SkyttäandGitHub 70c49824d7 Import util.dt as dt_util in components/[e-f]* (#93758) 2023-05-30 00:00:11 +03:00
Mike HeathandGitHub 2a7ba60574 Fully Kiosk: Truncate long URLs (#92347)
* Truncate long URLs

URL's longer than 256 characters will result in a
`homeassistant.exceptions.InvalidStateError`. This fixes that problem
and adds 2 extra_state_attributes: `full_url`, and `truncated`.

Fixes #89249

* Refactor to use function ref in entity description
2023-05-24 12:32:26 +02:00
epenetandGitHub 7b3a932cd9 Remove incorrect constant usage in test (#91198) 2023-04-11 10:00:17 +02:00
Franck NijhofandGitHub ed79265843 Enable Ruff PT006 (#88165)
* Enable Ruff PT006

* Adjust existing cases

* Fix tests

* Remove unneeded parentheses
2023-02-15 14:09:50 +01:00
Mike HeathandGitHub 04e9c7748f Support Fully Kiosk Browser device discovery via MQTT (#88109)
Support FKB device discovery via MQTT
2023-02-15 11:11:04 +01:00
epenetandGitHub b68f502769 Add type hints to integration tests (part 7) (#87980) 2023-02-13 09:53:09 +01:00
b5dfd83c46 Fix Fully Kiosk Browser merging entities when MAC empty (#87743)
* Fix FKB merging entities when MAC empty

Fully Kiosk Browser will sometimes return an empty MAC address in the
device_info API call. When two Fully Kiosk devices are added with
missing MAC addresses, HA will assume the two devices are the same and
merge the entities. This fixes that problem.

Fixes #77722

* Update homeassistant/components/fully_kiosk/entity.py

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

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-02-10 09:19:09 +01:00
Erik MontnemeryandGitHub cc564026fa Move EntityCategory to homeassistant.const (#87792)
* Move EntityCategory to homeassistant.const

* Fix more imports
2023-02-09 20:15:37 +01:00
epenetandGitHub a79be493e5 Adjust hass_client type hint in integration tests (#86954)
* Adjust hass_client type hint in integration tests

* Adjust hass_client_no_auth

* Fix rebase
2023-02-02 16:29:57 -05:00
Franck NijhofandGitHub bcf32f8331 Mark required fields in FlowResult typedict (#84811)
* Mark required fields in FlowResult typedict

* Remove unneeded asserts from tests
2022-12-30 12:01:45 +01:00
epenetandGitHub 69bc95a715 Use DATA_SIZE device class in integrations (#83895) 2022-12-13 10:17:56 +01:00
Charles GarwoodandGitHub a68bd8df6f Add start_application service to fully_kiosk integration (#80226) 2022-10-14 19:21:58 +02:00
Franck NijhofandGitHub 30920c3da7 Code quality improvements for Fully Kiosk (#80168) 2022-10-12 15:52:09 +02:00
Charles GarwoodandGitHub ffb6434776 Add load_url service to fully_kiosk integration (#79969) 2022-10-10 14:11:55 +02:00
epenetandGitHub 7bc2712142 Adjust root-import in tests (#78761)
* Adjust root-import in tests

* Adjust diagnostics

* Adjust button

* Adjust select

* Adjust device_tracker

* Adjust camera

* Adjust humidifier

* Adjust media_source

* Adjust update

* Adjust siren

* Adjust number

* Adjust alarm_control_panel

* Adjust notify

* Adjust sensor

* Adjust switch

* Revert anthemav

* Don't adjust demo humidifier
2022-09-19 15:22:23 +02:00
Charles GarwoodandGitHub 4ba8fb6457 Add basic media_player to Fully Kiosk Browser integration (#77266) 2022-08-29 19:39:05 +02:00
Charles GarwoodandGitHub 36d77d1f33 Add diagnostics to Fully Kiosk Browser integration (#77274) 2022-08-26 15:21:45 +02:00
Charles GarwoodandGitHub 1aef60c81c Add screen on/off switch to Fully Kiosk Browser integration (#76957) 2022-08-18 13:33:38 +02:00
6fbdc8e339 Add Fully Kiosk Browser number platform (#76952)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2022-08-18 10:51:28 +02:00
Charles GarwoodandGitHub 79ab13d118 Add Fully Kiosk Browser switch platform (#76931) 2022-08-17 16:30:20 +02:00