diff --git a/tests/test_airconditioner_capabilities.py b/tests/test_airconditioner_capabilities.py index f0881d5..fd9b8c3 100644 --- a/tests/test_airconditioner_capabilities.py +++ b/tests/test_airconditioner_capabilities.py @@ -784,6 +784,7 @@ def test_air_filter_usage_hours_derived_from_percent_and_capacity(): for e in airconditioner.AIR_FILTER.entities if e.key == "air_filter_usage_hours" and isinstance(e, SensorDesc) ) + assert desc.rep_fn is not None assert ( desc.rep_fn( {"x.com.samsung.da.filterUsage": "91", "x.com.samsung.da.filterCapacity": "500"} diff --git a/tests/test_refrigerator_tp1x_ref_21k_autodoor_capabilities.py b/tests/test_refrigerator_tp1x_ref_21k_autodoor_capabilities.py index 345a715..b5560cf 100644 --- a/tests/test_refrigerator_tp1x_ref_21k_autodoor_capabilities.py +++ b/tests/test_refrigerator_tp1x_ref_21k_autodoor_capabilities.py @@ -10,6 +10,7 @@ from custom_components.localthings.registry.adapter import flatten from custom_components.localthings.registry.by_type import for_device_by_model from custom_components.localthings.registry.capabilities import fridge from custom_components.localthings.registry.discovery import discover +from custom_components.localthings.registry.entities import SelectDesc from tests.conftest import _load_device FIXTURE = "refrigerator_tp1x_ref_21k_autodoor" @@ -51,7 +52,11 @@ def test_auto_door_voice_control_reads_status_lock(): def test_auto_door_timer_reads_its_own_options(): - desc = next(e for e in fridge.AUTO_DOOR_TIMER.entities if e.key == "auto_door_timer") + desc = next( + e + for e in fridge.AUTO_DOOR_TIMER.entities + if e.key == "auto_door_timer" and isinstance(e, SelectDesc) + ) rep = { "x.com.samsung.da.time.desired": "1", "x.com.samsung.da.time.supportedOptions": ["1", "2", "3", "4", "5", "6"], @@ -70,5 +75,6 @@ def test_auto_door_single_variant_href_bound_with_no_entities(): no paired current/desired field to expose, so it's coverage-only via the shared AUTO_DOOR_VARIANT pattern cap, not an entry of its own.""" assert fridge.AUTO_DOOR_VARIANT.entities == () + assert fridge.AUTO_DOOR_VARIANT.match_fn is not None _reg, resources = _fridge() assert fridge.AUTO_DOOR_VARIANT.match_fn(resources["/autodoor/single/vs/0"], resources) diff --git a/tests/test_refrigerator_tp1x_ref_21k_kimchi_capabilities.py b/tests/test_refrigerator_tp1x_ref_21k_kimchi_capabilities.py index 5961012..321a3e3 100644 --- a/tests/test_refrigerator_tp1x_ref_21k_kimchi_capabilities.py +++ b/tests/test_refrigerator_tp1x_ref_21k_kimchi_capabilities.py @@ -52,5 +52,6 @@ def test_auto_door_opener_present(): def test_auto_door_kimchi_variant_href_bound_with_no_entities(): assert fridge.AUTO_DOOR_VARIANT.entities == () + assert fridge.AUTO_DOOR_VARIANT.match_fn is not None _reg, resources = _fridge() assert fridge.AUTO_DOOR_VARIANT.match_fn(resources["/autodoor/kimchi/vs/0"], resources) diff --git a/tests/test_refrigerator_winecellar_capabilities.py b/tests/test_refrigerator_winecellar_capabilities.py index c6dabe4..5567d4a 100644 --- a/tests/test_refrigerator_winecellar_capabilities.py +++ b/tests/test_refrigerator_winecellar_capabilities.py @@ -10,6 +10,7 @@ from custom_components.localthings.registry.adapter import flatten from custom_components.localthings.registry.by_type import for_device_by_oic_type, resolve from custom_components.localthings.registry.capabilities import fridge from custom_components.localthings.registry.discovery import discover +from custom_components.localthings.registry.entities import SelectDesc from tests.conftest import _load_device FIXTURE = "refrigerator_winecellar" @@ -67,7 +68,9 @@ def test_deodor_filter_has_its_own_keys_not_air_filters(): def test_winecellar_pantry_zone_mode_options_and_write(): desc = next( - e for e in fridge.WINECELLAR_PANTRY_ZONE.entities if e.key == "winecellar_pantry_zone_mode" + e + for e in fridge.WINECELLAR_PANTRY_ZONE.entities + if e.key == "winecellar_pantry_zone_mode" and isinstance(e, SelectDesc) ) assert desc.options_field == "x.com.samsung.da.supportedOptions" assert desc.write_fn is not None @@ -82,5 +85,6 @@ def test_winecellar_pantry_zone_mode_options_and_write(): def test_winecellar_variant_and_info_hrefs_bound_with_no_entities(): assert fridge.AUTO_DOOR_VARIANT.entities == () assert fridge.WINECELLAR_INFO.entities == () + assert fridge.AUTO_DOOR_VARIANT.match_fn is not None _reg, resources = _fridge() assert fridge.AUTO_DOOR_VARIANT.match_fn(resources["/autodoor/winecellar/vs/0"], resources)