mirror of
https://github.com/home-assistant/supervisor.git
synced 2025-07-15 13:16:29 +00:00
Test IPv4 and IPv6 DNS settings are preserved on auto
Add tests which validate that IPv4 and IPv6 settings are preserved when in auto mode. This was the previous behavior, but also remains true today on API level.
This commit is contained in:
parent
5e7b5c1862
commit
540ba4b6e4
@ -1,5 +1,6 @@
|
||||
"""Mock of Network Manager Connection Settings service."""
|
||||
|
||||
from ipaddress import IPv6Address
|
||||
from dbus_fast import Variant
|
||||
from dbus_fast.service import PropertyAccess, dbus_property, signal
|
||||
|
||||
@ -54,6 +55,8 @@ SETTINGS_FIXTURE: dict[str, dict[str, Variant]] = {
|
||||
"method": Variant("s", "auto"),
|
||||
"route-data": Variant("aa{sv}", []),
|
||||
"routes": Variant("a(ayuayu)", []),
|
||||
"dns": Variant("aay", [IPv6Address("2001:4860:4860::8888").packed]),
|
||||
"dns-data": Variant("as", ["2001:4860:4860::8888"]),
|
||||
"addr-gen-mode": Variant("i", 0),
|
||||
},
|
||||
"proxy": {},
|
||||
|
@ -72,24 +72,24 @@ async def test_load(
|
||||
assert name_dict["eth0"].ipv4setting.method == InterfaceMethod.AUTO
|
||||
assert name_dict["eth0"].ipv4setting.address == []
|
||||
assert name_dict["eth0"].ipv4setting.gateway is None
|
||||
assert name_dict["eth0"].ipv4setting.nameservers == []
|
||||
assert name_dict["eth0"].ipv4setting.nameservers == [IPv4Address("192.168.2.1")]
|
||||
assert name_dict["eth0"].ipv6.gateway == IPv6Address("fe80::da58:d7ff:fe00:9c69")
|
||||
assert name_dict["eth0"].ipv6.ready is True
|
||||
assert name_dict["eth0"].ipv6setting.method == InterfaceMethod.AUTO
|
||||
assert name_dict["eth0"].ipv6setting.address == []
|
||||
assert name_dict["eth0"].ipv6setting.gateway is None
|
||||
assert name_dict["eth0"].ipv6setting.nameservers == []
|
||||
assert name_dict["eth0"].ipv6setting.nameservers == [IPv6Address('2001:4860:4860::8888')]
|
||||
assert "wlan0" in name_dict
|
||||
assert name_dict["wlan0"].enabled is False
|
||||
|
||||
assert connection_settings_service.settings["ipv4"]["method"].value == "auto"
|
||||
assert "address-data" not in connection_settings_service.settings["ipv4"]
|
||||
assert "gateway" not in connection_settings_service.settings["ipv4"]
|
||||
assert "dns" not in connection_settings_service.settings["ipv4"]
|
||||
assert connection_settings_service.settings["ipv4"]["dns"] == Variant("au", [16951488])
|
||||
assert connection_settings_service.settings["ipv6"]["method"].value == "auto"
|
||||
assert "address-data" not in connection_settings_service.settings["ipv6"]
|
||||
assert "gateway" not in connection_settings_service.settings["ipv6"]
|
||||
assert "dns" not in connection_settings_service.settings["ipv6"]
|
||||
assert connection_settings_service.settings["ipv6"]["dns"] == Variant("aay", [IPv6Address('2001:4860:4860::8888').packed])
|
||||
|
||||
assert network_manager_service.ActivateConnection.calls == [
|
||||
(
|
||||
|
Loading…
x
Reference in New Issue
Block a user