1010from aiohasupervisor .models import (
1111 InterfaceMethod ,
1212 IPv4Config ,
13+ MulticastDnsMode ,
1314 NetworkInterfaceConfig ,
1415 VlanConfig ,
1516)
@@ -45,6 +46,8 @@ async def test_network_info(
4546 assert result .interfaces [0 ].ipv6 .gateway is None
4647 assert result .interfaces [0 ].wifi is None
4748 assert result .interfaces [0 ].vlan is None
49+ assert result .interfaces [0 ].mdns is MulticastDnsMode .DEFAULT
50+ assert result .interfaces [0 ].llmnr is MulticastDnsMode .DEFAULT
4851
4952 assert result .docker .interface == "hassio"
5053 assert result .docker .address .compressed == "172.30.32.0/23"
@@ -89,6 +92,8 @@ async def test_network_interface_info(
8992 assert result .ipv6 .gateway is None
9093 assert result .wifi is None
9194 assert result .vlan is None
95+ assert result .mdns is MulticastDnsMode .ANNOUNCE
96+ assert result .llmnr is MulticastDnsMode .ANNOUNCE
9297
9398
9499async def test_network_update_interface (
@@ -102,13 +107,25 @@ async def test_network_update_interface(
102107 address = [IPv4Interface ("192.168.1.2/24" )],
103108 gateway = IPv4Address ("192.168.1.1" ),
104109 nameservers = [IPv4Address ("192.168.1.1" )],
105- )
110+ ),
111+ mdns = MulticastDnsMode .OFF ,
106112 )
107113 assert (
108114 await supervisor_client .network .update_interface ("end0" , config = config ) is None
109115 )
110- assert responses .requests .keys () == {
111- ("POST" , URL (f"{ SUPERVISOR_URL } /network/interface/end0/update" ))
116+
117+ request_key = ("POST" , URL (f"{ SUPERVISOR_URL } /network/interface/end0/update" ))
118+ assert responses .requests .keys () == {request_key }
119+
120+ assert len (responses .requests [request_key ]) == 1
121+ assert responses .requests [request_key ][0 ].kwargs ["json" ] == {
122+ "ipv4" : {
123+ "address" : ["192.168.1.2/24" ],
124+ "gateway" : "192.168.1.1" ,
125+ "method" : "static" ,
126+ "nameservers" : ["192.168.1.1" ],
127+ },
128+ "mdns" : "off" ,
112129 }
113130
114131
@@ -132,7 +149,11 @@ async def test_network_access_points(
132149
133150@pytest .mark .parametrize (
134151 "config" ,
135- [None , NetworkInterfaceConfig (ipv4 = IPv4Config (method = InterfaceMethod .AUTO ))],
152+ [
153+ None ,
154+ NetworkInterfaceConfig (ipv4 = IPv4Config (method = InterfaceMethod .AUTO )),
155+ NetworkInterfaceConfig (mdns = MulticastDnsMode .OFF ),
156+ ],
136157)
137158async def test_network_save_vlan (
138159 responses : aioresponses ,
0 commit comments