def test_runner(test_case): path_obj = Path(test_case) python_script = path_obj.name script_dir = path_obj.parents[0] cmd_list = ["python", python_script] std_out, std_err, return_code = subprocess_runner(cmd_list, script_dir) assert return_code == 0 assert std_err == ""
def test_runner_pylint(linter, test_case, test_return_code): path_obj = Path(test_case) python_script = path_obj.name script_dir = path_obj.parents[0] cmd_list = [linter, python_script] std_out, std_err, return_code = subprocess_runner(cmd_list, script_dir) assert return_code == test_return_code assert std_err == ""
def test_runner_textfsm(template, test_input, row_count): path_obj = Path(template) template_file = path_obj.name script_dir = path_obj.parents[0] path_obj = Path(test_input) input_file = path_obj.name cmd_list = ["textfsm.py", template_file, input_file] std_out, std_err, return_code = subprocess_runner(cmd_list, script_dir) # print(std_out) assert return_code == 0 assert std_err == "" # Count rows in the FSM output table textfsm_rows = re.findall(r"^\[.*\]$", std_out, flags=re.M) assert row_count == len(textfsm_rows)