1
0
mirror of https://github.com/home-assistant/supervisor.git synced 2025-12-20 02:18:59 +00:00
Files
supervisor/tests/dbus/network/test_wireless.py
Mike Degatano 99bc201688 Listen for dbus property changes (#3872)
* Listen for dbus property changes

* Avoid remaking dbus proxy objects

* proper snake case for pylint

* some cleanup and more tests
2022-09-17 09:55:41 +02:00

52 lines
1.8 KiB
Python

"""Test Network Manager Wireless object."""
import asyncio
from supervisor.dbus.network import NetworkManager
from tests.common import fire_property_change_signal
async def test_wireless(network_manager: NetworkManager):
"""Test wireless properties."""
assert network_manager.interfaces["wlan0"].wireless.active is None
fire_property_change_signal(
network_manager.interfaces["wlan0"].wireless,
{"ActiveAccessPoint": "/org/freedesktop/NetworkManager/AccessPoint/43099"},
)
await asyncio.sleep(0)
assert (
network_manager.interfaces["wlan0"].wireless.active.mac == "E4:57:40:A9:D7:DE"
)
fire_property_change_signal(
network_manager.interfaces["wlan0"].wireless, {}, ["ActiveAccessPoint"]
)
await asyncio.sleep(0)
assert network_manager.interfaces["wlan0"].wireless.active is None
async def test_request_scan(network_manager: NetworkManager, dbus: list[str]):
"""Test request scan."""
dbus.clear()
assert await network_manager.interfaces["wlan0"].wireless.request_scan() is None
assert dbus == [
"/org/freedesktop/NetworkManager/Devices/3-org.freedesktop.NetworkManager.Device.Wireless.RequestScan"
]
async def test_get_all_access_points(network_manager: NetworkManager, dbus: list[str]):
"""Test get all access points."""
dbus.clear()
accesspoints = await network_manager.interfaces[
"wlan0"
].wireless.get_all_accesspoints()
assert len(accesspoints) == 2
assert accesspoints[0].mac == "E4:57:40:A9:D7:DE"
assert accesspoints[0].mode == 2
assert accesspoints[1].mac == "18:4B:0D:23:A1:9C"
assert accesspoints[1].mode == 2
assert dbus == [
"/org/freedesktop/NetworkManager/Devices/3-org.freedesktop.NetworkManager.Device.Wireless.GetAllAccessPoints"
]