/openthread-3.7.0/tests/scripts/thread-cert/ |
D | v1_2_router_5_1_1.py | 34 import mle 67 msg = leader_messages.next_mle_message(mle.CommandType.ADVERTISEMENT) 70 msg.assertMleMessageContainsTlv(mle.SourceAddress) 71 msg.assertMleMessageContainsTlv(mle.LeaderData) 72 msg.assertMleMessageContainsTlv(mle.Route64) 75 msg = router_messages.next_mle_message(mle.CommandType.PARENT_REQUEST) 78 msg.assertMleMessageContainsTlv(mle.Mode) 79 msg.assertMleMessageContainsTlv(mle.Challenge) 80 msg.assertMleMessageContainsTlv(mle.ScanMask) 81 msg.assertMleMessageContainsTlv(mle.Version) [all …]
|
D | v1_2_test_enhanced_keep_alive.py | 34 import mle 76 msg = leader_messages.next_mle_message(mle.CommandType.ADVERTISEMENT) 79 msg.assertMleMessageContainsTlv(mle.SourceAddress) 80 msg.assertMleMessageContainsTlv(mle.LeaderData) 81 msg.assertMleMessageContainsTlv(mle.Route64) 84 msg = sed_messages.next_mle_message(mle.CommandType.PARENT_REQUEST) 87 msg.assertMleMessageContainsTlv(mle.Mode) 88 msg.assertMleMessageContainsTlv(mle.Challenge) 89 msg.assertMleMessageContainsTlv(mle.ScanMask) 90 msg.assertMleMessageContainsTlv(mle.Version) [all …]
|
D | config.py | 38 import mle 231 …return mle.Route64Factory(link_quality_and_route_data_factory=mle.LinkQualityAndRouteDataFactory()) 235 …return mle.NetworkDataFactory(network_data_tlvs_factory=create_default_network_data_tlvs_factory()) 239 return mle.AddressRegistrationFactory( 240 addr_compressed_factory=mle.AddressCompressedFactory(), 241 addr_full_factory=mle.AddressFullFactory(), 246 …return mle.ThreadDiscoveryFactory(thread_discovery_tlvs_factory=create_default_thread_discovery_tl… 267 mle.TlvType.SOURCE_ADDRESS: mle.SourceAddressFactory(), 268 mle.TlvType.MODE: mle.ModeFactory(), 269 mle.TlvType.TIMEOUT: mle.TimeoutFactory(), [all …]
|
D | command.py | 39 import mle 137 tlv_request_tlv = command_msg.get_mle_message_tlv(mle.TlvRequest) 173 command_msg.assertMleMessageContainsTlv(mle.Challenge) 174 command_msg.assertMleMessageContainsTlv(mle.Version) 176 check_mle_optional_tlv(command_msg, source_address, mle.SourceAddress) 177 check_mle_optional_tlv(command_msg, leader_data, mle.LeaderData) 179 check_tlv_request_tlv(command_msg, tlv_request_address16, mle.TlvType.ADDRESS16) 180 check_tlv_request_tlv(command_msg, tlv_request_route64, mle.TlvType.ROUTE64) 181 check_tlv_request_tlv(command_msg, tlv_request_link_margin, mle.TlvType.LINK_MARGIN) 197 command_msg.assertMleMessageContainsTlv(mle.LinkLayerFrameCounter) [all …]
|
D | Cert_9_2_06_DatasetDissemination.py | 252 filter(lambda p: p.mle.tlv.active_tstamp == TIMESTAMP_INIT and \ 253 (p.mle.tlv.leader_data.data_version - 254 _pkt.mle.tlv.leader_data.data_version) % 256 <= 127 and \ 255 p.mle.tlv.leader_data.stable_data_version == 256 _pkt.mle.tlv.leader_data.stable_data_version and \ 283 filter(lambda p: p.mle.tlv.active_tstamp == TIMESTAMP_INIT and \ 284 (p.mle.tlv.leader_data.data_version - 285 _pkt.mle.tlv.leader_data.data_version) % 256 <= 127 and \ 286 p.mle.tlv.leader_data.stable_data_version == 287 _pkt.mle.tlv.leader_data.stable_data_version and \ [all …]
|
D | v1_2_test_parent_selection.py | 34 import mle 134 parent_prefer = messages.next_mle_message(mle.CommandType.PARENT_RESPONSE) 138 parent_cmp = messages.next_mle_message(mle.CommandType.PARENT_RESPONSE) 142 self.assertGreater((parent_prefer.get_mle_message_tlv(mle.LinkMargin).link_margin - 143 parent_cmp.get_mle_message_tlv(mle.LinkMargin).link_margin), 20) 147 msg = messages.next_mle_message(mle.CommandType.CHILD_ID_REQUEST) 168 assert messages.next_mle_message(mle.CommandType.PARENT_RESPONSE) 170 parent_prefer = messages.next_mle_message(mle.CommandType.PARENT_RESPONSE) 174 parent_cmp = messages.next_mle_message(mle.CommandType.PARENT_RESPONSE) 178 parent_prefer.get_mle_message_tlv(mle.LinkMargin).link_margin, [all …]
|
D | test_mle.py | 37 import mle 352 addresses = [mle.AddressCompressed(any_cid(), any_iid()), mle.AddressFull(any_ipv6_address())] 392 source_address = mle.SourceAddress(address) 407 factory = mle.SourceAddressFactory() 415 self.assertTrue(isinstance(actual_source_address, mle.SourceAddress)) 425 mode = mle.Mode(receiver, any_secure(), any_device_type(), any_network_data()) 437 mode = mle.Mode(any_receiver(), secure, any_device_type(), any_network_data()) 449 mode = mle.Mode(any_receiver(), any_secure(), device_type, any_network_data()) 461 mode = mle.Mode(any_receiver(), any_secure(), any_device_type(), network_data) 476 factory = mle.ModeFactory() [all …]
|
D | v1_2_LowPower_7_2_01_ForwardTrackingSeries.py | 33 from mle import LinkMetricsSubTlvType, TlvType 194 … .filter(lambda p: LinkMetricsSubTlvType.FORWARD_PROBING_REGISTRATION in p.mle.tlv.link_sub_tlv) \ 195 .filter(lambda p: 4 in p.mle.tlv.link_forward_series) \ 196 ….filter(lambda p: consts.LINK_METRICS_TYPE_AVERAGE_ENUM_COUNT in p.mle.tlv.metric_type_id_flags.ty… 197 ….filter(lambda p: consts.LINK_METRICS_METRIC_TYPE_ENUM_PDU_COUNT in p.mle.tlv.metric_type_id_flags… 198 .filter(lambda p: 1 in p.mle.tlv.metric_type_id_flags.l) \ 205 .filter(lambda p: p.mle.tlv.link_status_sub_tlv == consts.LINK_METRICS_STATUS_SUCCESS) \ 212 .filter(lambda p: TlvType.LINK_METRICS_REPORT in p.mle.tlv.type) \ 213 ….filter(lambda p: consts.LINK_METRICS_TYPE_AVERAGE_ENUM_COUNT in p.mle.tlv.metric_type_id_flags.ty… 214 ….filter(lambda p: consts.LINK_METRICS_METRIC_TYPE_ENUM_PDU_COUNT in p.mle.tlv.metric_type_id_flags… [all …]
|
D | v1_2_LowPower_7_1_02_SingleProbeLinkMetricsWithoutEnhancedAck.py | 33 from mle import LinkMetricsSubTlvType 209 … .filter(lambda p: LinkMetricsSubTlvType.LINK_METRICS_QUERY_ID in p.mle.tlv.link_sub_tlv) \ 210 .filter(lambda p: p.mle.tlv.query_id == 0) \ 211 … .filter(lambda p: LinkMetricsSubTlvType.LINK_METRICS_QUERY_OPTIONS in p.mle.tlv.link_sub_tlv) \ 225 .filter(lambda p: LinkMetricsSubTlvType.LINK_METRICS_REPORT in p.mle.tlv.link_sub_tlv) \ 226 ….filter(lambda p: consts.LINK_METRICS_TYPE_AVERAGE_ENUM_EXPONENTIAL in p.mle.tlv.metric_type_id_fl… 227 ….filter(lambda p: consts.LINK_METRICS_METRIC_TYPE_ENUM_RSSI in p.mle.tlv.metric_type_id_flags.metr… 245 … .filter(lambda p: LinkMetricsSubTlvType.LINK_METRICS_QUERY_ID in p.mle.tlv.link_sub_tlv) \ 246 .filter(lambda p: p.mle.tlv.query_id == 0) \ 247 … .filter(lambda p: LinkMetricsSubTlvType.LINK_METRICS_QUERY_OPTIONS in p.mle.tlv.link_sub_tlv) \ [all …]
|
D | Cert_9_2_09_PendingPartition.py | 272 filter(lambda p: p.mle.tlv.active_tstamp == TIMESTAMP_INIT and\ 273 p.mle.tlv.pending_tstamp == COMM_PENDING_TIMESTAMP and\ 274 (p.mle.tlv.leader_data.data_version - 275 _pkt.mle.tlv.leader_data.data_version) % 256 <= 127 and\ 276 (p.mle.tlv.leader_data.stable_data_version - 277 _pkt.mle.tlv.leader_data.stable_data_version) % 256 <= 127 and\ 292 } <= set(p.mle.tlv.type) and\ 293 p.mle.tlv.active_tstamp == TIMESTAMP_INIT and\ 322 } <= set(p.mle.tlv.type) and\ 327 p.mle.tlv.active_tstamp == TIMESTAMP_INIT and\ [all …]
|
D | Cert_7_1_06_BorderRouterAsLeader.py | 232 } <= set(p.mle.tlv.type) and\ 249 } <= set(p.mle.tlv.type) and\ 259 p.mle.tlv.leader_data.data_version == 260 (_dr_pkt.mle.tlv.leader_data.data_version + 1) % 256 and\ 261 (p.mle.tlv.leader_data.stable_data_version == 262 (_dr_pkt.mle.tlv.leader_data.stable_data_version + 1) % 256 or\ 263 p.mle.tlv.leader_data.stable_data_version == 264 (_pkt.mle.tlv.leader_data.stable_data_version + 1) % 256) and\ 290 } == set(p.mle.tlv.type) and\ 294 p.mle.tlv.leader_data.data_version == [all …]
|
D | Cert_5_1_04_RouterAddressReallocation.py | 33 import mle 151 } <= set(p.mle.tlv.type) and\ 153 p.mle.tlv.scan_mask.r == 1 and\ 154 p.mle.tlv.scan_mask.e == 1 174 } <= set(p.mle.tlv.type) and\ 176 p.mle.tlv.scan_mask.r == 1 and\ 177 p.mle.tlv.scan_mask.e == 0 194 p.mle.tlv.leader_data.partition_id != 195 _pkt_pt.mle.tlv.leader_data.partition_id and\ 196 (p.mle.tlv.leader_data.data_version != [all …]
|
D | v1_2_LowPower_7_1_01_SingleProbeLinkMetricsWithEnhancedAcks.py | 205 … .filter(lambda p: consts.LM_ENHANCED_ACK_CONFIGURATION_SUB_TLV in p.mle.tlv.link_sub_tlv) \ 206 … .filter(lambda p: p.mle.tlv.link_enh_ack_flags == consts.LINK_METRICS_ENH_ACK_PROBING_REGISTER) \ 207 .filter(lambda p: p.mle.tlv.link_requested_type_id_flags == '0a') \ 216 .filter(lambda p: p.mle.tlv.link_status_sub_tlv == consts.LINK_METRICS_STATUS_SUCCESS) \ 234 … .filter(lambda p: consts.LM_ENHANCED_ACK_CONFIGURATION_SUB_TLV in p.mle.tlv.link_sub_tlv) \ 235 … .filter(lambda p: p.mle.tlv.link_enh_ack_flags == consts.LINK_METRICS_ENH_ACK_PROBING_REGISTER) \ 236 .filter(lambda p: p.mle.tlv.link_requested_type_id_flags == '0a0b') \ 242 .filter(lambda p: p.mle.tlv.link_status_sub_tlv == consts.LINK_METRICS_STATUS_SUCCESS) \ 298 … .filter(lambda p: consts.LM_ENHANCED_ACK_CONFIGURATION_SUB_TLV in p.mle.tlv.link_sub_tlv) \ 299 … .filter(lambda p: p.mle.tlv.link_enh_ack_flags == consts.LINK_METRICS_ENH_ACK_PROBING_CLEAR) \ [all …]
|
D | Cert_5_1_13_RouterReset.py | 33 import mle 125 } == set(p.mle.tlv.type) and\ 136 } == set(p.mle.tlv.type) and\ 160 } <= set(p.mle.tlv.type) and\ 161 p.mle.tlv.addr16 is nullField and \ 162 p.mle.tlv.route64.id_mask is nullField 193 } <= set(p.mle.tlv.type) and\ 194 p.mle.tlv.addr16 is not nullField and \ 195 p.mle.tlv.route64.id_mask is not nullField and\ 196 p.mle.tlv.addr16 == ROUTER_RLOC16 and\ [all …]
|
D | v1_2_test_single_probe.py | 32 import mle 78 msg = leader_messages.next_mle_message(mle.CommandType.DATA_RESPONSE) 79 msg.assertMleMessageContainsTlv(mle.LinkMetricsReport) 87 msg = leader_messages.next_mle_message(mle.CommandType.DATA_RESPONSE) 88 msg.assertMleMessageContainsTlv(mle.LinkMetricsReport) 96 msg = leader_messages.next_mle_message(mle.CommandType.DATA_RESPONSE) 97 msg.assertMleMessageContainsTlv(mle.LinkMetricsReport) 105 msg = leader_messages.next_mle_message(mle.CommandType.DATA_RESPONSE) 106 msg.assertMleMessageContainsTlv(mle.LinkMetricsReport) 117 msg = leader_messages.next_mle_message(mle.CommandType.DATA_RESPONSE) [all …]
|
D | v1_2_LowPower_test_link_metrics_manager.py | 33 from mle import LinkMetricsSubTlvType, TlvType 155 … .filter(lambda p: consts.LM_ENHANCED_ACK_CONFIGURATION_SUB_TLV in p.mle.tlv.link_sub_tlv) \ 156 … .filter(lambda p: p.mle.tlv.link_enh_ack_flags == consts.LINK_METRICS_ENH_ACK_PROBING_REGISTER) \ 157 .filter(lambda p: p.mle.tlv.link_requested_type_id_flags == '0a0b') \ 166 .filter(lambda p: p.mle.tlv.link_status_sub_tlv == consts.LINK_METRICS_STATUS_SUCCESS) \ 194 … .filter(lambda p: consts.LM_ENHANCED_ACK_CONFIGURATION_SUB_TLV in p.mle.tlv.link_sub_tlv) \ 195 … .filter(lambda p: p.mle.tlv.link_enh_ack_flags == consts.LINK_METRICS_ENH_ACK_PROBING_REGISTER) \ 196 .filter(lambda p: p.mle.tlv.link_requested_type_id_flags == '0a0b') \ 205 .filter(lambda p: p.mle.tlv.link_status_sub_tlv == consts.LINK_METRICS_STATUS_SUCCESS) \ 243 … .filter(lambda p: consts.LM_ENHANCED_ACK_CONFIGURATION_SUB_TLV in p.mle.tlv.link_sub_tlv) \ [all …]
|
D | Cert_5_5_03_SplitMergeChildren.py | 146 lambda p: {SOURCE_ADDRESS_TLV, LEADER_DATA_TLV, ROUTE64_TLV} == set(p.mle.tlv.type)) 149 …lambda p: {SOURCE_ADDRESS_TLV, LEADER_DATA_TLV, ROUTE64_TLV} == set(p.mle.tlv.type) and p.ipv6.hli… 155 …p.mle.tlv.type) and p.mle.tlv.scan_mask.r == 1 and p.mle.tlv.scan_mask.e == 1 and p.ipv6.hlim == 2… 161 … lambda p: p.mle.tlv.scan_mask.r == 1 and p.mle.tlv.scan_mask.e == 0).must_next().must_verify( 162 … lambda p: {MODE_TLV, CHALLENGE_TLV, SCAN_MASK_TLV, VERSION_TLV} == set(p.mle.tlv.type 177 … lambda p: {SOURCE_ADDRESS_TLV, LEADER_DATA_TLV, ROUTE64_TLV} == set(p.mle.tlv.type) and p.mle.tlv. 178 … leader_data.partition_id != _pkt.mle.tlv.leader_data.partition_id and p.mle.tlv.leader_data. 179 …data_version != _pkt.mle.tlv.leader_data.data_version and p.mle.tlv.leader_data.stable_data_versio… 180 _pkt.mle.tlv.leader_data.stable_data_version and p.ipv6.hlim == 255).must_next() 185 …p: {SOURCE_ADDRESS_TLV, MODE_TLV, LEADER_DATA_TLV, ADDRESS_REGISTRATION_TLV} < set(p.mle.tlv.type)) [all …]
|
D | Cert_9_2_05_ActiveDataset.py | 201 } <= set(p.mle.tlv.type) and\ 202 p.mle.tlv.active_tstamp == 100 and\ 203 (p.mle.tlv.leader_data.data_version - 204 _pkt.mle.tlv.leader_data.data_version) % 256 <= 127 and\ 205 (p.mle.tlv.leader_data.stable_data_version - 206 _pkt.mle.tlv.leader_data.stable_data_version) % 256 <= 127 234 } <= set(p.mle.tlv.type) and\ 246 p.mle.tlv.active_tstamp == 100 and\ 294 } <= set(p.mle.tlv.type) and\ 295 p.mle.tlv.active_tstamp == 101 and\ [all …]
|
D | Cert_5_6_06_NetworkDataExpiration.py | 173 …p: {SOURCE_ADDRESS_TLV, MODE_TLV, LEADER_DATA_TLV, ADDRESS_REGISTRATION_TLV} < set(p.mle.tlv.type)) 178 p.mle.tlv.type) and { 188 …p: {SOURCE_ADDRESS_TLV, MODE_TLV, LEADER_DATA_TLV, ADDRESS_REGISTRATION_TLV} < set(p.mle.tlv.type)) 202 …Ipv6Addr('2001:2:0:3::')} == set(p.thread_nwd.tlv.prefix) and p.mle.tlv.leader_data.data_version == 203 … (_pkt.mle.tlv.leader_data.data_version + 1) % 256 and p.mle.tlv.leader_data.stable_data_version == 204 (_pkt.mle.tlv.leader_data.stable_data_version + 1) % 256) 208 … p: {SOURCE_ADDRESS_TLV, MODE_TLV, LEADER_DATA_TLV, ADDRESS_REGISTRATION_TLV} < set(p.mle.tlv.type) 209 …and p.mle.tlv.leader_data.data_version == (_pkt.mle.tlv.leader_data.data_version + 1) % 256 and p.… 210 … leader_data.stable_data_version == (_pkt.mle.tlv.leader_data.stable_data_version + 1) % 256) 215 p.mle.tlv.type) and p.mle.tlv.leader_data.data_version == [all …]
|
D | Cert_7_1_05_BorderRouterAsRouter.py | 182 filter(lambda p: len(p.mle.tlv.addr_reg_iid) >= 4).\ 191 } < set(p.mle.tlv.type) and\ 192 len(p.mle.tlv.addr_reg_iid) >= 3 and\ 193 set(p.mle.tlv.addr_reg_iid) < set(_pkt.mle.tlv.addr_reg_iid) 217 } == set(p.mle.tlv.type) and\ 222 p.mle.tlv.leader_data.data_version == 223 _dv_pkt.mle.tlv.leader_data.data_version and\ 240 filter(lambda p: len(p.mle.tlv.addr_reg_iid) >= 3).\ 249 } < set(p.mle.tlv.type) and\ 250 len(p.mle.tlv.addr_reg_iid) >= 2 and\ [all …]
|
D | Cert_5_2_04_REEDUpgrade.py | 33 import mle 271 } <= set(p.mle.tlv.type) and\ 273 p.mle.tlv.scan_mask.r == 1 and\ 274 p.mle.tlv.scan_mask.e == 0).\ 284 } <= set(p.mle.tlv.type) and\ 286 p.mle.tlv.scan_mask.r == 1 and\ 287 p.mle.tlv.scan_mask.e == 1).\ 304 } <= set(p.mle.tlv.type)).\ 321 } <= set(p.mle.tlv.type) and\ 322 p.mle.tlv.addr16 is nullField and\ [all …]
|
D | Cert_9_2_07_DelayTimer.py | 162 …).must_verify(lambda p: {ACTIVE_OPERATION_DATASET_TLV, ACTIVE_TIMESTAMP_TLV} < set(p.mle.tlv.type)… 165 } <= set(p.thread_meshcop.tlv.type) and p.mle.tlv.active_tstamp == LEADER_ACTIVE_TIMESTAMP) 174 … p.mle.tlv.type) and {NM_BORDER_AGENT_LOCATOR_TLV, NM_COMMISSIONER_SESSION_ID_TLV} <= set( 175 … p.thread_meshcop.tlv.type) and p.thread_nwd.tlv.stable == [0] and p.mle.tlv.active_tstamp == 180 …).must_verify(lambda p: {ACTIVE_OPERATION_DATASET_TLV, ACTIVE_TIMESTAMP_TLV} < set(p.mle.tlv.type)… 183 } <= set(p.thread_meshcop.tlv.type) and p.mle.tlv.active_tstamp == ROUTER_ACTIVE_TIMESTAMP) 193 … } <= set(p.mle.tlv.type) and p.thread_nwd.tlv.stable == [0] and p.mle.tlv.active_tstamp == 194 ROUTER_ACTIVE_TIMESTAMP and p.mle.tlv.pending_tstamp == ROUTER_PENDING_TIMESTAMP) 201 …lambda p: {ACTIVE_TIMESTAMP_TLV, PENDING_TIMESTAMP_TLV} < set(p.mle.tlv.type) and p.mle.tlv.active… 202 == ROUTER_ACTIVE_TIMESTAMP and p.mle.tlv.pending_tstamp == ROUTER_PENDING_TIMESTAMP) [all …]
|
D | Cert_5_1_11_REEDAttachLinkQuality.py | 33 import mle 144 } <= set(p.mle.tlv.type) and\ 146 p.mle.tlv.scan_mask.r == 1 and\ 147 p.mle.tlv.scan_mask.e == 0 169 } <= set(p.mle.tlv.type) and\ 171 p.mle.tlv.scan_mask.r == 1 and\ 172 p.mle.tlv.scan_mask.e == 1 204 } <= set(p.mle.tlv.type) and\ 205 p.mle.tlv.addr16 is nullField and\ 209 _pkt.must_not_verify(lambda p: (ADDRESS_REGISTRATION_TLV) in p.mle.tlv.type)
|
D | Cert_7_1_07_BorderRouterAsLeader.py | 261 } <= set(p.mle.tlv.type) and\ 264 p.mle.tlv.leader_data.data_version == 265 (_pkt.mle.tlv.leader_data.data_version + 1) % 256 and\ 266 p.mle.tlv.leader_data.stable_data_version == 267 (_pkt.mle.tlv.leader_data.stable_data_version + 1) % 256 278 } <= set(p.mle.tlv.type) and\ 283 p.mle.tlv.leader_data.data_version == 284 (_dr_pkt.mle.tlv.leader_data.data_version + 1) % 256 and\ 285 p.mle.tlv.leader_data.stable_data_version == 286 _dr_pkt.mle.tlv.leader_data.stable_data_version and\ [all …]
|
D | Cert_9_2_08_PersistentDatasets.py | 242 filter(lambda p: p.mle.tlv.active_tstamp == 244 p.mle.tlv.pending_tstamp == 246 p.mle.tlv.leader_data.data_version != 247 (_pkt.mle.tlv.leader_data.data_version + 1) % 256 and\ 248 p.mle.tlv.leader_data.stable_data_version != 249 (_pkt.mle.tlv.leader_data.stable_data_version + 1) % 256 and\ 268 filter(lambda p: p.mle.tlv.active_tstamp == 270 p.mle.tlv.pending_tstamp == 272 p.mle.tlv.leader_data.data_version != 273 (_pkt.mle.tlv.leader_data.data_version + 1) % 256 and\ [all …]
|