mirror of
https://github.com/home-assistant/core.git
synced 2026-08-24 10:13:52 -05:00
Pass the bluetooth detection callback to the scanner constructor (#179857)
Co-authored-by: Claude <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude
parent
c48e9d95d1
commit
6b2607a4a3
@@ -2850,9 +2850,10 @@ async def test_wrapped_instance_with_filter(
|
||||
|
||||
assert _get_manager() is not None
|
||||
scanner = HaBleakScannerWrapper(
|
||||
filters={"UUIDs": ["cba20d00-224d-11e6-9fb8-0002a5d5c51b"]}
|
||||
filters={"UUIDs": ["cba20d00-224d-11e6-9fb8-0002a5d5c51b"]},
|
||||
detection_callback=_device_detected,
|
||||
)
|
||||
scanner.register_detection_callback(_device_detected)
|
||||
await scanner.start()
|
||||
|
||||
inject_advertisement(hass, switchbot_device, switchbot_adv_2)
|
||||
await hass.async_block_till_done()
|
||||
@@ -2862,11 +2863,12 @@ async def test_wrapped_instance_with_filter(
|
||||
assert discovered == [switchbot_device]
|
||||
assert len(detected) == 1
|
||||
|
||||
scanner.register_detection_callback(_device_detected)
|
||||
# We should get a reply from the history when we register again
|
||||
# register_detection_callback is deprecated but still replays the history
|
||||
with pytest.warns(DeprecationWarning, match="is deprecated"):
|
||||
scanner.register_detection_callback(_device_detected)
|
||||
assert len(detected) == 2
|
||||
scanner.register_detection_callback(_device_detected)
|
||||
# We should get a reply from the history when we register again
|
||||
with pytest.warns(DeprecationWarning, match="is deprecated"):
|
||||
scanner.register_detection_callback(_device_detected)
|
||||
assert len(detected) == 3
|
||||
|
||||
with patch_discovered_devices([]):
|
||||
@@ -2923,9 +2925,10 @@ async def test_wrapped_instance_with_service_uuids(
|
||||
|
||||
assert _get_manager() is not None
|
||||
scanner = HaBleakScannerWrapper(
|
||||
service_uuids=["cba20d00-224d-11e6-9fb8-0002a5d5c51b"]
|
||||
service_uuids=["cba20d00-224d-11e6-9fb8-0002a5d5c51b"],
|
||||
detection_callback=_device_detected,
|
||||
)
|
||||
scanner.register_detection_callback(_device_detected)
|
||||
await scanner.start()
|
||||
|
||||
inject_advertisement(hass, switchbot_device, switchbot_adv)
|
||||
inject_advertisement(hass, switchbot_device, switchbot_adv_2)
|
||||
@@ -2983,9 +2986,10 @@ async def test_wrapped_instance_with_service_uuids_with_coro_callback(
|
||||
|
||||
assert _get_manager() is not None
|
||||
scanner = HaBleakScannerWrapper(
|
||||
service_uuids=["cba20d00-224d-11e6-9fb8-0002a5d5c51b"]
|
||||
service_uuids=["cba20d00-224d-11e6-9fb8-0002a5d5c51b"],
|
||||
detection_callback=_device_detected,
|
||||
)
|
||||
scanner.register_detection_callback(_device_detected)
|
||||
await scanner.start()
|
||||
|
||||
inject_advertisement(hass, switchbot_device, switchbot_adv)
|
||||
inject_advertisement(hass, switchbot_device, switchbot_adv_2)
|
||||
@@ -3037,9 +3041,10 @@ async def test_wrapped_instance_with_broken_callbacks(
|
||||
|
||||
assert _get_manager() is not None
|
||||
scanner = HaBleakScannerWrapper(
|
||||
service_uuids=["cba20d00-224d-11e6-9fb8-0002a5d5c51b"]
|
||||
service_uuids=["cba20d00-224d-11e6-9fb8-0002a5d5c51b"],
|
||||
detection_callback=_device_detected,
|
||||
)
|
||||
scanner.register_detection_callback(_device_detected)
|
||||
await scanner.start()
|
||||
|
||||
inject_advertisement(hass, switchbot_device, switchbot_adv)
|
||||
await hass.async_block_till_done()
|
||||
@@ -3086,11 +3091,11 @@ async def test_wrapped_instance_changes_uuids(
|
||||
empty_adv = generate_advertisement_data(local_name="empty")
|
||||
|
||||
assert _get_manager() is not None
|
||||
scanner = HaBleakScannerWrapper()
|
||||
scanner = HaBleakScannerWrapper(detection_callback=_device_detected)
|
||||
await scanner.start()
|
||||
scanner.set_scanning_filter(
|
||||
service_uuids=["cba20d00-224d-11e6-9fb8-0002a5d5c51b"]
|
||||
)
|
||||
scanner.register_detection_callback(_device_detected)
|
||||
|
||||
inject_advertisement(hass, switchbot_device, switchbot_adv)
|
||||
inject_advertisement(hass, switchbot_device, switchbot_adv_2)
|
||||
@@ -3142,11 +3147,11 @@ async def test_wrapped_instance_changes_filters(
|
||||
empty_adv = generate_advertisement_data(local_name="empty")
|
||||
|
||||
assert _get_manager() is not None
|
||||
scanner = HaBleakScannerWrapper()
|
||||
scanner = HaBleakScannerWrapper(detection_callback=_device_detected)
|
||||
await scanner.start()
|
||||
scanner.set_scanning_filter(
|
||||
filters={"UUIDs": ["cba20d00-224d-11e6-9fb8-0002a5d5c51b"]}
|
||||
)
|
||||
scanner.register_detection_callback(_device_detected)
|
||||
|
||||
inject_advertisement(hass, switchbot_device, switchbot_adv)
|
||||
inject_advertisement(hass, switchbot_device, switchbot_adv_2)
|
||||
|
||||
Reference in New Issue
Block a user