mirror of
https://github.com/espressif/openthread.git
synced 2026-07-27 22:37:45 +00:00
[thread-cert] fix case 7.1.6 intermittent failure (#5974)
An issue is caused by tiny time difference as well between step 5 and step 6, step 6 occasionally is sent out ahead of step5.
This commit is contained in:
@@ -245,33 +245,34 @@ class Cert_7_1_6_BorderRouterAsLeader(thread_cert.TestCase):
|
||||
p.thread_nwd.tlv.prefix
|
||||
).\
|
||||
must_next()
|
||||
_dr_pkt1 = pkts.filter_wpan_src64(LEADER).\
|
||||
filter_LLANMA().\
|
||||
filter_mle_cmd(MLE_DATA_RESPONSE).\
|
||||
filter(lambda p: {
|
||||
NETWORK_DATA_TLV,
|
||||
SOURCE_ADDRESS_TLV,
|
||||
LEADER_DATA_TLV
|
||||
} <= set(p.mle.tlv.type) and\
|
||||
{
|
||||
NWD_BORDER_ROUTER_TLV,
|
||||
NWD_BORDER_ROUTER_TLV,
|
||||
NWD_6LOWPAN_ID_TLV
|
||||
} <= set(p.thread_nwd.tlv.type) and\
|
||||
p.thread_nwd.tlv.border_router.flag.p == [1, 1] and\
|
||||
p.thread_nwd.tlv.border_router.flag.s == [1, 1] and\
|
||||
p.thread_nwd.tlv.border_router.flag.r == [1, 1] and\
|
||||
p.thread_nwd.tlv.border_router.flag.o == [1, 1] and\
|
||||
p.mle.tlv.leader_data.data_version ==
|
||||
(_dr_pkt.mle.tlv.leader_data.data_version + 1) % 256 and\
|
||||
(p.mle.tlv.leader_data.stable_data_version ==
|
||||
(_dr_pkt.mle.tlv.leader_data.stable_data_version + 1) % 256 or\
|
||||
p.mle.tlv.leader_data.stable_data_version ==
|
||||
(_pkt.mle.tlv.leader_data.stable_data_version + 1) % 256) and\
|
||||
[Ipv6Addr(PREFIX_2001[:-3])] ==
|
||||
p.thread_nwd.tlv.prefix
|
||||
).\
|
||||
must_next()
|
||||
with pkts.save_index():
|
||||
_dr_pkt1 = pkts.filter_wpan_src64(LEADER).\
|
||||
filter_LLANMA().\
|
||||
filter_mle_cmd(MLE_DATA_RESPONSE).\
|
||||
filter(lambda p: {
|
||||
NETWORK_DATA_TLV,
|
||||
SOURCE_ADDRESS_TLV,
|
||||
LEADER_DATA_TLV
|
||||
} <= set(p.mle.tlv.type) and\
|
||||
{
|
||||
NWD_BORDER_ROUTER_TLV,
|
||||
NWD_BORDER_ROUTER_TLV,
|
||||
NWD_6LOWPAN_ID_TLV
|
||||
} <= set(p.thread_nwd.tlv.type) and\
|
||||
p.thread_nwd.tlv.border_router.flag.p == [1, 1] and\
|
||||
p.thread_nwd.tlv.border_router.flag.s == [1, 1] and\
|
||||
p.thread_nwd.tlv.border_router.flag.r == [1, 1] and\
|
||||
p.thread_nwd.tlv.border_router.flag.o == [1, 1] and\
|
||||
p.mle.tlv.leader_data.data_version ==
|
||||
(_dr_pkt.mle.tlv.leader_data.data_version + 1) % 256 and\
|
||||
(p.mle.tlv.leader_data.stable_data_version ==
|
||||
(_dr_pkt.mle.tlv.leader_data.stable_data_version + 1) % 256 or\
|
||||
p.mle.tlv.leader_data.stable_data_version ==
|
||||
(_pkt.mle.tlv.leader_data.stable_data_version + 1) % 256) and\
|
||||
[Ipv6Addr(PREFIX_2001[:-3])] ==
|
||||
p.thread_nwd.tlv.prefix
|
||||
).\
|
||||
must_next()
|
||||
|
||||
# Step 6: Leader MUST send a MLE Child Update Request or MLE Data
|
||||
# Response to SED, including the following TLVs:
|
||||
|
||||
Reference in New Issue
Block a user