[thread-cert] use unittest assert methods (#9936)

This commit is contained in:
Jonathan Hui
2024-03-15 11:11:51 -07:00
committed by GitHub
parent 9d6321bdaa
commit 148fa47bde
6 changed files with 46 additions and 40 deletions
@@ -79,7 +79,7 @@ class Router_5_1_01(thread_cert.TestCase):
msg.assertMleMessageContainsTlv(mle.Challenge)
msg.assertMleMessageContainsTlv(mle.ScanMask)
msg.assertMleMessageContainsTlv(mle.Version)
assert msg.get_mle_message_tlv(mle.Version).version >= config.THREAD_VERSION_1_2
self.assertGreaterEqual(msg.get_mle_message_tlv(mle.Version).version, config.THREAD_VERSION_1_2)
scan_mask_tlv = msg.get_mle_message_tlv(mle.ScanMask)
self.assertEqual(1, scan_mask_tlv.router)
@@ -97,7 +97,7 @@ class Router_5_1_01(thread_cert.TestCase):
msg.assertMleMessageContainsTlv(mle.LinkMargin)
msg.assertMleMessageContainsTlv(mle.Connectivity)
msg.assertMleMessageContainsTlv(mle.Version)
assert msg.get_mle_message_tlv(mle.Version).version >= config.THREAD_VERSION_1_2
self.assertGreaterEqual(msg.get_mle_message_tlv(mle.Version).version, config.THREAD_VERSION_1_2)
# 4 - Router_1 receives the MLE Parent Response and sends a Child ID Request
msg = router_messages.next_mle_message(mle.CommandType.CHILD_ID_REQUEST)
@@ -110,7 +110,7 @@ class Router_5_1_01(thread_cert.TestCase):
msg.assertMleMessageContainsTlv(mle.Version)
msg.assertMleMessageContainsTlv(mle.TlvRequest)
msg.assertMleMessageDoesNotContainTlv(mle.AddressRegistration)
assert msg.get_mle_message_tlv(mle.Version).version >= config.THREAD_VERSION_1_2
self.assertGreaterEqual(msg.get_mle_message_tlv(mle.Version).version, config.THREAD_VERSION_1_2)
# 5 - Leader responds with a Child ID Response
msg = leader_messages.next_mle_message(mle.CommandType.CHILD_ID_RESPONSE)
@@ -128,7 +128,7 @@ class TestBackboneRouterService(thread_cert.TestCase):
WAIT_TIME = BBR_REGISTRATION_JITTER + WAIT_REDUNDANCE
self.simulator.go(WAIT_TIME)
self.assertEqual(self.nodes[BBR_1].get_backbone_router_state(), 'Primary')
assert self.nodes[BBR_1].get_backbone_router()['seqno'] == 2
self.assertEqual(self.nodes[BBR_1].get_backbone_router()['seqno'], 2)
# 3) Reset BBR_1 and bring it back after its original router id is released
# 200s (100s MaxNeighborAge + 90s InfiniteCost + 10s redundance)
@@ -186,7 +186,7 @@ class TestBackboneRouterService(thread_cert.TestCase):
# Check no SRV_DATA.ntf.
messages = self.simulator.get_messages_sent_by(BBR_2)
msg = messages.next_coap_message('0.02', '/a/sd', False)
assert (msg is None), "Error: %d sent unexpected SRV_DATA.ntf when there is PBbr already"
self.assertIsNone(msg)
# Flush relative message queue.
self.flush_nodes([BBR_1])
@@ -203,7 +203,7 @@ class TestBackboneRouterService(thread_cert.TestCase):
messages.next_coap_message('0.02', '/a/sd', True)
self.assertEqual(self.nodes[BBR_1].get_backbone_router_state(), 'Secondary')
# Verify Sequence number increases when become Secondary from Primary.
assert self.nodes[BBR_1].get_backbone_router()['seqno'] == (BBR_1_SEQNO + 1)
self.assertEqual(self.nodes[BBR_1].get_backbone_router()['seqno'], BBR_1_SEQNO + 1)
# 4a) Check communication via DUA.
bbr2_dua = self.nodes[BBR_2].get_addr(config.DOMAIN_PREFIX)
@@ -238,7 +238,7 @@ class TestBackboneRouterService(thread_cert.TestCase):
# 6a) Check the uniqueness of DUA by comparing the one in above 4a).
bbr2_dua2 = self.nodes[BBR_2].get_addr(config.DOMAIN_PREFIX)
assert bbr2_dua == bbr2_dua2, 'Error: Unexpected different DUA ({} v.s. {})'.format(bbr2_dua, bbr2_dua2)
self.assertEqual(bbr2_dua, bbr2_dua2)
# 6b) Check communication via DUA
self.assertTrue(self.nodes[BBR_1].ping(bbr2_dua))
@@ -242,10 +242,8 @@ class TestDomainUnicastAddress(thread_cert.TestCase):
WAIT_TIME = WAIT_REDUNDANCE
self.simulator.go(WAIT_TIME)
dua = self.nodes[MED_1_2].get_addr(config.DOMAIN_PREFIX)
assert ipaddress.ip_address(dua) == ipaddress.ip_address(
med_1_2_dua), 'Error: Expected SLAAC DUA not generated'
assert ipaddress.ip_address(med_1_2_dua) == ipaddress.ip_address(
dua), 'Error: Expected same SLAAC DUA not generated'
self.assertEqual(ipaddress.ip_address(dua), ipaddress.ip_address(med_1_2_dua))
self.assertEqual(ipaddress.ip_address(med_1_2_dua), ipaddress.ip_address(dua))
self.__check_dua_registration(MED_1_2, med_1_2_dua_iid, domain_prefix_cid)
@@ -269,8 +267,7 @@ class TestDomainUnicastAddress(thread_cert.TestCase):
self.simulator.go(WAIT_TIME)
dua = self.nodes[MED_1_2].get_addr(config.DOMAIN_PREFIX)
assert dua, 'Error: Expected DUA not found'
assert ipaddress.ip_address(med_1_2_dua) == ipaddress.ip_address(
dua), 'Error: Expected same SLAAC DUA not generated'
self.assertEqual(ipaddress.ip_address(med_1_2_dua), ipaddress.ip_address(dua))
self.__check_dua_registration(MED_1_2, med_1_2_dua_iid, domain_prefix_cid)
@@ -299,8 +296,7 @@ class TestDomainUnicastAddress(thread_cert.TestCase):
self.simulator.go(WAIT_TIME)
dua = self.nodes[MED_1_2].get_addr(config.DOMAIN_PREFIX)
assert dua, 'Error: Expected DUA not found'
assert ipaddress.ip_address(med_1_2_dua) == ipaddress.ip_address(
dua), 'Error: Expected same SLAAC DUA not generated'
self.assertEqual(ipaddress.ip_address(med_1_2_dua), ipaddress.ip_address(dua))
self.__check_dua_registration(MED_1_2, med_1_2_dua_iid, domain_prefix_cid)
@@ -276,7 +276,7 @@ class TestDomainUnicastAddressRegistration(thread_cert.TestCase):
dua2 = self.nodes[ROUTER_1_2].get_addr(config.DOMAIN_PREFIX)
assert dua2, 'Error: Expected DUA ({}) not found'.format(dua2)
assert dua2 != dua, 'Error: Expected Different DUA not found, same DUA {}'.format(dua2)
self.assertNotEqual(dua2, dua)
# e) (repeated) Configure BBR_1 to respond with per remaining error status:
# - increase BBR seqno to trigger reregistration
@@ -704,7 +704,7 @@ class TestMulticastListenerRegistration(thread_cert.TestCase):
def __check_renewing(self, id, parent_id, addr, expect_mlr_req=True, expect_mlr_req_proxied=False):
"""Check if MLR works that a node can renew it's registered MAs"""
assert self.pbbr_id == BBR_1
self.assertEqual(self.pbbr_id, BBR_1)
self.flush_all()
self.simulator.go(MLR_TIMEOUT + WAIT_REDUNDANCE)
@@ -748,7 +748,7 @@ class TestMulticastListenerRegistration(thread_cert.TestCase):
def __check_rereg_pbbr_change(self, id, parent_id, addr, expect_mlr_req=True, expect_mlr_req_proxied=False):
"""Check if MLR works that a node can do MLR reregistration when PBBR changes"""
# Make BBR_2 to be Primary and expect MLR.req within REREG_DELAY
assert self.pbbr_id == BBR_1
self.assertEqual(self.pbbr_id, BBR_1)
self.flush_all()
self.nodes[BBR_1].disable_backbone_router()
@@ -139,8 +139,8 @@ class TestParentSelection(thread_cert.TestCase):
assert (parent_cmp), "Error: Expected parent response not found"
# Known that link margin for link quality 3 is 80 and link quality 2 is 15
assert ((parent_prefer.get_mle_message_tlv(mle.LinkMargin).link_margin -
parent_cmp.get_mle_message_tlv(mle.LinkMargin).link_margin) > 20)
self.assertGreater((parent_prefer.get_mle_message_tlv(mle.LinkMargin).link_margin -
parent_cmp.get_mle_message_tlv(mle.LinkMargin).link_margin), 20)
# Check Child Id Request
messages = self.simulator.get_messages_sent_by(REED_1_2)
@@ -174,8 +174,9 @@ class TestParentSelection(thread_cert.TestCase):
parent_cmp = messages.next_mle_message(mle.CommandType.PARENT_RESPONSE)
assert (parent_cmp), "Error: Expected parent response not found"
assert (parent_prefer.get_mle_message_tlv(mle.LinkMargin).link_margin == parent_cmp.get_mle_message_tlv(
mle.LinkMargin).link_margin)
self.assertEqual(
parent_prefer.get_mle_message_tlv(mle.LinkMargin).link_margin,
parent_cmp.get_mle_message_tlv(mle.LinkMargin).link_margin)
# Check Child Id Request
messages = self.simulator.get_messages_sent_by(ROUTER_1_2)
@@ -204,11 +205,13 @@ class TestParentSelection(thread_cert.TestCase):
parent_cmp = messages.next_mle_message(mle.CommandType.PARENT_RESPONSE)
assert (parent_cmp), "Error: Expected parent response not found"
assert (parent_prefer.get_mle_message_tlv(mle.LinkMargin).link_margin == parent_cmp.get_mle_message_tlv(
mle.LinkMargin).link_margin)
self.assertEqual(
parent_prefer.get_mle_message_tlv(mle.LinkMargin).link_margin,
parent_cmp.get_mle_message_tlv(mle.LinkMargin).link_margin)
assert (parent_prefer.get_mle_message_tlv(mle.Connectivity).pp > parent_cmp.get_mle_message_tlv(
mle.Connectivity).pp)
self.assertGreater(
parent_prefer.get_mle_message_tlv(mle.Connectivity).pp,
parent_cmp.get_mle_message_tlv(mle.Connectivity).pp)
# Check Child Id Request
messages = self.simulator.get_messages_sent_by(REED_1_1)
@@ -239,12 +242,15 @@ class TestParentSelection(thread_cert.TestCase):
parent_cmp = messages.next_mle_message(mle.CommandType.PARENT_RESPONSE)
assert (parent_cmp), "Error: Expected parent response not found"
assert (parent_prefer.get_mle_message_tlv(mle.LinkMargin).link_margin == parent_cmp.get_mle_message_tlv(
mle.LinkMargin).link_margin)
assert (parent_prefer.get_mle_message_tlv(mle.Connectivity).pp == parent_cmp.get_mle_message_tlv(
mle.Connectivity).pp)
assert (parent_prefer.get_mle_message_tlv(mle.Connectivity).link_quality_3 > parent_cmp.get_mle_message_tlv(
mle.Connectivity).link_quality_3)
self.assertEqual(
parent_prefer.get_mle_message_tlv(mle.LinkMargin).link_margin,
parent_cmp.get_mle_message_tlv(mle.LinkMargin).link_margin)
self.assertEqual(
parent_prefer.get_mle_message_tlv(mle.Connectivity).pp,
parent_cmp.get_mle_message_tlv(mle.Connectivity).pp)
self.assertGreater(
parent_prefer.get_mle_message_tlv(mle.Connectivity).link_quality_3,
parent_cmp.get_mle_message_tlv(mle.Connectivity).link_quality_3)
# Check Child Id Request
messages = self.simulator.get_messages_sent_by(MED_1_1)
@@ -272,14 +278,18 @@ class TestParentSelection(thread_cert.TestCase):
parent_cmp = messages.next_mle_message(mle.CommandType.PARENT_RESPONSE)
assert (parent_cmp), "Error: Expected parent response not found"
assert (parent_prefer.get_mle_message_tlv(mle.LinkMargin).link_margin == parent_cmp.get_mle_message_tlv(
mle.LinkMargin).link_margin)
assert (parent_prefer.get_mle_message_tlv(mle.Connectivity).pp == parent_cmp.get_mle_message_tlv(
mle.Connectivity).pp)
assert (parent_prefer.get_mle_message_tlv(mle.Connectivity).link_quality_3 == parent_cmp.get_mle_message_tlv(
mle.Connectivity).link_quality_3)
assert (parent_prefer.get_mle_message_tlv(mle.Version).version > parent_cmp.get_mle_message_tlv(
mle.Version).version)
self.assertEqual(
parent_prefer.get_mle_message_tlv(mle.LinkMargin).link_margin,
parent_cmp.get_mle_message_tlv(mle.LinkMargin).link_margin)
self.assertEqual(
parent_prefer.get_mle_message_tlv(mle.Connectivity).pp,
parent_cmp.get_mle_message_tlv(mle.Connectivity).pp)
self.assertEqual(
parent_prefer.get_mle_message_tlv(mle.Connectivity).link_quality_3,
parent_cmp.get_mle_message_tlv(mle.Connectivity).link_quality_3)
self.assertGreater(
parent_prefer.get_mle_message_tlv(mle.Version).version,
parent_cmp.get_mle_message_tlv(mle.Version).version)
# Check Child Id Request
messages = self.simulator.get_messages_sent_by(MED_1_2)