def create_default_mle_message_factory(master_key): return mle.MleMessageFactory( aux_sec_hdr_factory=net_crypto.AuxiliarySecurityHeaderFactory(), mle_command_factory=mle.MleCommandFactory( tlvs_factories=create_default_mle_tlvs_factories()), crypto_engine=create_default_mle_crypto_engine(master_key), )
def test_should_create_AuxiliarySecurityHeader_from_bytearray_when_parse_method_is_called( self): # GIVEN key_id_mode = any_key_id_mode() sec_lvl = any_security_level() frame_counter = any_frame_counter() key_id = any_key_id(key_id_mode) factory = net_crypto.AuxiliarySecurityHeaderFactory() data = bytearray([sec_lvl | key_id_mode << 3]) + struct.pack( "<I", frame_counter) + key_id # WHEN aux_sec_hdr = factory.parse(io.BytesIO(data), common.MessageInfo()) # THEN self.assertTrue( isinstance(aux_sec_hdr, net_crypto.AuxiliarySecurityHeader)) self.assertEqual(key_id_mode, aux_sec_hdr.key_id_mode) self.assertEqual(sec_lvl, aux_sec_hdr.security_level) self.assertEqual(frame_counter, aux_sec_hdr.frame_counter)