38 Commits

Author SHA1 Message Date
Erik Montnemery
4b34d1bbb5
Merge config subentry feature branch to dev (#136121)
* Reapply "Add support for subentries to config entries" (#133470) (#136061)

* Reapply "Add support for subentries to config entries" (#133470)

This reverts commit ecb3bf79f32a2e25d141ff467e5958826ed9fc3a.

* Update test snapshot

* Add config subentry support to device registry (#128157)

* Add config subentry support to device registry

* Apply suggestions from code review

* Update syrupy serializer

* Update snapshots

* Address review comments

* Allow a device to be connected to no or a single subentry of a config entry

* Update snapshots

* Revert "Allow a device to be connected to no or a single subentry of a config entry"

This reverts commit ec6f613151cb4a806b7961033c004b71b76510c2.

* Update test snapshots

* Bump release version in comments

* Rename config_subentries to config_entries_subentries

* Add config subentry support to entity registry (#128155)

* Add config subentry support to entity registry

* Update syrupy serializer

* Update snapshots

* Update snapshots

* Accept suggested changes

* Clean registries when removing subentry (#136671)

* Clean up registries when removing subentry

* Update tests

* Clean up subentries from deleted devices when removing config entry (#136669)

* Clean up subentries from deleted devices when removing config entry

* Move

* Add config subentry support to entity platform (#128161)

* Add config subentry support to entity platform

* Rename subentry_id to config_subentry_id

* Store subentry type in subentry (#136687)

* Add reconfigure support to config subentries (#133353)

* Add reconfigure support to config subentries

* Update test

* Minor adjustment

* Rename supported_subentry_flows to supported_subentry_types

* Address review comments

* Add subentry support to kitchen sink (#136755)

* Add subentry support to kitchen sink

* Add subentry reconfigure support to kitchen_sink

* Update kitchen_sink tests with subentry type stored in config entry

* Update kitchen_sink

* Update kitchen_sink

* Adjust kitchen sink tests

* Fix hassfest

* Apply suggestions from code review

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

* Improve docstrings and strings.json

---------

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

* Update snapshots

* Update snapshots

* Update snapshots

* Update snapshots

* Update snapshots

* Update snapshots

* Update snapshots

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2025-02-10 16:40:07 +01:00
Åke Strandberg
5a52c77523
Add test for myuplink DeviceInfo (#136360) 2025-01-28 13:48:58 +01:00
Åke Strandberg
3da9c599dc
Avoid keyerror on incomplete api data in myuplink (#136333)
* Avoid keyerror

* Inject erroneous value in device point fixture

* Update diagnostics snapshot
2025-01-23 19:04:00 +02:00
Åke Strandberg
53439d6e2a
Handle step size correctly in myuplink number platform (#133016) 2024-12-13 08:55:44 +01:00
Åke Strandberg
4c5965ffc9
Add reconfiguration flow to myuplink (#132970)
* Add reconfiguration flow

* Tick reconfiguration-flow rule
2024-12-11 22:47:14 +01:00
Åke Strandberg
7103b7fd80
Use snapshot tests for remaining myuplink platforms (#132915)
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-12-11 13:01:02 +01:00
Åke Strandberg
46d4081ec6
Address review comment on myuplink tests (#132819) 2024-12-10 12:58:42 +01:00
Åke Strandberg
f6621023c2
Improve myuplink tests to reach full coverage for all modules (#131937) 2024-12-10 12:20:21 +01:00
Åke Strandberg
8d72443fd6
Set unique_id in myuplink config entry (#132672) 2024-12-09 15:47:40 +01:00
Åke Strandberg
2c89e89c84
Improve mapping of myuplink entities (#129137) 2024-10-29 19:59:04 +01:00
epenet
57a73d1b1b
Use start_reauth helper method in integration tests (m-o) (#124790) 2024-08-28 16:19:31 +02:00
Åke Strandberg
172778053c
Add select platform to myuplink (#118661) 2024-07-19 11:29:58 +02:00
Marc Mueller
921430d497
Import Generator from collections.abc (3) (#120916) 2024-07-01 12:09:11 +02:00
Sid
721b2c2ca8
Enable Ruff PT012 (#113957) 2024-06-08 17:59:08 +02:00
Marc Mueller
33ed4fd862
Import Generator from typing_extensions (3) (#118990) 2024-06-06 17:28:59 +02:00
epenet
b81f0b600f
Move current_request_with_host fixture to decorator (#118810)
* Move current_request_with_host fixture to decorator

* One more
2024-06-04 17:50:22 +02:00
epenet
d10362e226
Add AiohttpClientMocker type hints in tests (#118373) 2024-05-29 14:38:46 +02:00
epenet
ead0e797c1
Use registry fixtures in tests (m-n) (#118291) 2024-05-28 13:40:45 +02:00
Åke Strandberg
c4c96be880
Add alarm and connectivity binary_sensors to myuplink (#111643)
* Add alarm and connectivity binary_sensors

* Get is_on for correct system

* Make coverage 100% in binary_sensor

* Address review comments

* Revert dict comprehension for now
2024-05-15 17:13:56 +02:00
Erik Montnemery
db8597a742
Reduce scope of JSON/XML test fixtures (#116197) 2024-04-25 19:12:36 -05:00
epenet
0b01326f9f
Use is in ConfigEntryState enum comparison in tests (A-M) (#114925) 2024-04-05 17:16:55 +02:00
Joost Lekkerkerker
5d500cb74b
Use is in enum comparison in config flow tests K-O (#114672) 2024-04-02 11:21:42 -10:00
Joost Lekkerkerker
be7c4295dc
Fix MyUplink tests (#113534) 2024-03-15 18:26:28 +01:00
Åke Strandberg
eb1f37ea9b
Filter out irrelevant entities on SMO20 devices in myuplink (#113493) 2024-03-15 14:06:10 +01:00
Åke Strandberg
86607d2bbb
Create more relevant names for myuplink DeviceInfo (#111502) 2024-03-15 12:11:13 +01:00
Åke Strandberg
f95d649f44
Add icon translations to myuplink (#111466) 2024-03-15 00:47:10 +01:00
Marc Mueller
aa16a9d707
Add empty line after module docstring (3) (#112750) 2024-03-08 20:38:34 +01:00
Marc Mueller
32f3f46542
Add empty line after module docstring (2) [tests.components] (#112737) 2024-03-08 19:16:21 +01:00
Marc Mueller
1722e23df8
Add empty line after module docstring [tests l-p] (#112710) 2024-03-08 14:55:15 +01:00
Åke Strandberg
073fcfcd6f
Add tests for number of devices created in myuplink (#111816)
* Add tests for number of devices created

* Change default fixture to 2 devices in one system

* Update snapshot

* Change deviuce to test

* Merge tests to one module
2024-03-03 14:27:24 +01:00
Åke Strandberg
cd46cc6e80
Add myuplink number platform (#111154)
* Add number platform

* Use constant for SERVICE_SET_VALUE
2024-02-24 22:39:14 +01:00
Åke Strandberg
c167001861
Add myuplink switch platform (#110810)
* Add switch platform

* Add mypulink switch platform

* Update tests according to review

* Address more review comments

* Adjust types

* More typing

* Fix typo

* Use constants in tests

* Revert constants

* Catch aiohttp.ClientError when API call fails

* Add test case for failed async_set_device_points call

* Test api failures for both toggle directions

* Use parametrize for testing switching
2024-02-22 11:27:46 +01:00
Åke Strandberg
2614d6fece
Add tests to myuplink binary_sensor (#110995) 2024-02-21 12:32:25 +01:00
Åke Strandberg
230ac417c0
Add check for myuplink startup ClientError (#110926)
* Raise ConfigEntryNotReady if appropriate

* Catchin exceptions during startup

* Change expected_state to SETUP_ERROR
2024-02-20 02:17:35 +01:00
Åke Strandberg
f5dad1d312
Add myuplink reauth flow (#110587)
* WIP test

* WIP

* WIP Reauth flow. Test fail otherways OK.

* Minor adjustments to tests

* Merge

* Merge

* Next level...

* Cleanup according to review

* It works!

* Simplify setup

* Remove default

* Remove files from PR

* Add back test_init

* Add back test_sensor

* Adjust error message

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-02-17 10:18:53 +01:00
Åke Strandberg
fd0f093299
Add some myuplink tests (#110521)
* Add some myuplink tests

* Update fixtures for api endpoints

* Adjust according to review

* Update snapshot file

* Remove unneded fixtures and improve typing

* More cleanup

* One last session scope removed

* Fix typing

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-02-15 13:44:45 +01:00
Åke Strandberg
8376c07969
Add myuplink diagnostics download (#109925)
* Dump all relevant data from API

* Cleanup and adjust

* Redact serialNumber

* WIP

* Add fixtures

* WIP

* Tests for diagnostics completed

* Address review comments

* Change to fake token

* Add missed redact

* Improve mocks

* Resolve review comments
2024-02-12 10:56:06 +01:00
Peter Winkler
2508b55b0f
Add myUplink integration (#86522)
* First checkin for myUplink

* Refactored coordinator and sensor state classe

* Updated .coveragerc

* Update test_config_flow

* Fix test_config_flow for myuplink

* Only set state class for temperature sensor

* PR comment updates

* Type strong dict

* use asyncio.timeouts

* PR updates (part 1)

* Updated to myuplink 0.0.9

* Add strict typing

* Fix typing

* Inherit CoordinatorEntity

* Clean up coordinator and sensors

* Use common base entity

* Improve device point sensor

* Exclude entity from coverage

* Set device point entity name if there's no entity description

* Update homeassistant/components/myuplink/sensor.py

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

* Update homeassistant/components/myuplink/entity.py

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

* Update homeassistant/components/myuplink/entity.py

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

* Remvoed firmware + connstate sensors

* Always add device point parameter name

* Removed MyUplinkDeviceSensor

* Removed unused class

* key="celsius",

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-01-12 12:17:07 +01:00