Skip to content

Commit dd944cf

Browse files
committed
tests: Add tests for dbus Network1 interface
Commit edc3f5f ("Support `LocaEIDs` property in `au.com.codeconstruct.MCTP.Network1`") added a new dbus interface; add tests for the content of the LocalEIDs property. Signed-off-by: Jeremy Kerr <[email protected]>
1 parent b104e2c commit dd944cf

File tree

2 files changed

+39
-0
lines changed

2 files changed

+39
-0
lines changed

tests/mctp_test_utils.py

+11
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,17 @@ async def mctpd_mctp_endpoint_obj(dbus, path, iface):
1313
)
1414
return await obj.get_interface(iface)
1515

16+
async def mctpd_mctp_network_obj(dbus, net):
17+
obj = await dbus.get_proxy_object(
18+
'au.com.codeconstruct.MCTP1',
19+
f'/au/com/codeconstruct/mctp1/networks/{net:d}'
20+
)
21+
iface = await obj.get_interface('au.com.codeconstruct.MCTP.Network1')
22+
# fixup autogenerated snake-case names
23+
iface.get_local_eids = iface.get_local_ei_ds
24+
iface.set_local_eids = iface.set_local_ei_ds
25+
return iface
26+
1627
async def mctpd_mctp_endpoint_control_obj(dbus, path):
1728
return await mctpd_mctp_endpoint_obj(
1829
dbus,

tests/test_mctpd.py

+28
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55

66
from mctp_test_utils import (
77
mctpd_mctp_iface_obj,
8+
mctpd_mctp_network_obj,
89
mctpd_mctp_endpoint_common_obj,
910
mctpd_mctp_endpoint_control_obj
1011
)
@@ -455,3 +456,30 @@ async def test_query_message_types(dbus, mctpd):
455456
query_types.sort()
456457

457458
assert ep_types == query_types
459+
460+
""" Network1.LocalEIDs should reflect locally-assigned EID state """
461+
async def test_network_local_eids_single(dbus, mctpd):
462+
iface = mctpd.system.interfaces[0]
463+
464+
net = await mctpd_mctp_network_obj(dbus, iface.net)
465+
eids = list(await net.get_local_eids())
466+
467+
assert eids == [8]
468+
469+
async def test_network_local_eids_multiple(dbus, mctpd):
470+
iface = mctpd.system.interfaces[0]
471+
await mctpd.system.add_address(mctpd.system.Address(iface, 9))
472+
473+
net = await mctpd_mctp_network_obj(dbus, iface.net)
474+
eids = list(await net.get_local_eids())
475+
476+
assert eids == [8, 9]
477+
478+
async def test_network_local_eids_none(dbus, mctpd):
479+
iface = mctpd.system.interfaces[0]
480+
await mctpd.system.del_address(mctpd.system.Address(iface, 8))
481+
482+
net = await mctpd_mctp_network_obj(dbus, iface.net)
483+
eids = list(await net.get_local_eids())
484+
485+
assert eids == []

0 commit comments

Comments
 (0)