def create_default_network_diag_tlv_factories(): return { network_diag.TlvType.EXT_ADDRESS: network_layer.MacExtendedAddressFactory(), network_diag.TlvType.ADDRESS16: mle.Address16Factory(), network_diag.TlvType.MODE: mle.ModeFactory(), network_diag.TlvType.POLLING_PERIOD: mle.TimeoutFactory(), network_diag.TlvType.CONNECTIVITY: mle.ConnectivityFactory(), network_diag.TlvType.ROUTE64: create_default_mle_tlv_route64_factory(), network_diag.TlvType.LEADER_DATA: mle.LeaderDataFactory(), network_diag.TlvType.NETWORK_DATA: create_default_mle_tlv_network_data_factory(), network_diag.TlvType.IPV6_ADDRESS_LIST: network_diag.Ipv6AddressListFactory(), network_diag.TlvType.MAC_COUNTERS: network_diag.MacCountersFactory(), network_diag.TlvType.BATTERY_LEVEL: network_diag.BatteryLevelFactory(), network_diag.TlvType.SUPPLY_VOLTAGE: network_diag.SupplyVoltageFactory(), network_diag.TlvType.CHILD_TABLE: network_diag.ChildTableFactory(), network_diag.TlvType.CHANNEL_PAGES: network_diag.ChannelPagesFactory(), network_diag.TlvType.TYPE_LIST: network_diag.TypeListFactory(), network_diag.TlvType.MAX_CHILD_TIMEOUT: network_diag.MaxChildTimeoutFactory() }
def create_deafult_network_tlvs_factories(): return { network_layer.TlvType.TARGET_EID: network_layer.TargetEidFactory(), network_layer.TlvType.MAC_EXTENDED_ADDRESS: network_layer.MacExtendedAddressFactory(), network_layer.TlvType.RLOC16: network_layer.Rloc16Factory(), network_layer.TlvType.ML_EID: network_layer.MlEidFactory(), network_layer.TlvType.STATUS: network_layer.StatusFactory(), network_layer.TlvType.TIME_SINCE_LAST_TRANSACTION: network_layer.TimeSinceLastTransactionFactory(), network_layer.TlvType.ROUTER_MASK: network_layer.RouterMaskFactory(), network_layer.TlvType.ND_OPTION: network_layer.NdOptionFactory(), network_layer.TlvType.ND_DATA: network_layer.NdDataFactory(), network_layer.TlvType.THREAD_NETWORK_DATA: network_layer.ThreadNetworkDataFactory( create_default_network_data_tlvs_factory()), # Routing information are distributed in a Thread network by MLE Routing TLV # which is in fact MLE Route64 TLV. Thread specificaton v1.1. - Chapter 5.20 network_layer.TlvType.MLE_ROUTING: create_default_mle_tlv_route64_factory() }
def test_should_create_MacExtendedAddress_from_bytearray_when_parse_method_is_called( self): # GIVEN mac_address = any_mac_extended_address() factory = network_layer.MacExtendedAddressFactory() # WHEN mac_extended_address = factory.parse(io.BytesIO(mac_address), common.MessageInfo()) # THEN self.assertTrue( isinstance(mac_extended_address, network_layer.MacExtendedAddress)) self.assertEqual(mac_address, mac_extended_address.mac_address)