Best Python code snippet using avocado_python
args_utils.py
Source:args_utils.py
1from modules.dict_to_obj import DictToObj2class ArgsUtils(object):3 @staticmethod4 def log_args(args, script, logging_utils):5 cmd = []6 for arg in vars(args):7 key = arg8 value = getattr(args, arg)9 if isinstance(value, list):10 value = ' '.join([str(it) for it in value])11 cmd.append('-' + key + ' ' + str(value))12 logging_utils.info('{}\t {}'.format(13 key,14 value15 ))16 logging_utils.info(script + ' ' + ' '.join(cmd))17 @staticmethod18 def extract_other_args_names(args_other):19 names = []20 for each in args_other:21 if each.startswith('-'):22 names.append(each[1:].strip())23 return names24 @staticmethod25 def add_other_args(args, args_other):26 args = args.__dict__27 arg_name = None28 arg_params = []29 def handle_args(args, arg_name, arg_params):30 if arg_name is not None and len(arg_params):31 # check by type, int, float, bool, str32 is_parsed = False33 try:34 args[arg_name] = [int(it) for it in arg_params]35 is_parsed = True36 except ValueError:37 pass38 if not is_parsed:39 try:40 args[arg_name] = [float(it) for it in arg_params]41 is_parsed = True42 except ValueError:43 pass44 if not is_parsed:45 try:46 for it in arg_params:47 if it.lower() != 'false' and it.lower() != 'true':48 raise ValueError49 args[arg_name] = [it.lower() == 'true' for it in arg_params]50 except ValueError:51 pass52 if not is_parsed:53 args[arg_name] = arg_params54 for each in args_other:55 if each.startswith('-'):56 handle_args(args, arg_name, arg_params)57 arg_params = []58 arg_name = each[1:].strip()59 else:60 if arg_name is not None:61 arg_params.append(each.strip())62 handle_args(args, arg_name, arg_params)...
Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!