Spaces:
Build error
Build error
| import json | |
| import re | |
| def check_coverage(coverage_output, code_file): | |
| json_cov = json.loads(coverage_output) | |
| if code_file in json_cov['files'].keys(): | |
| file_data = json_cov['files'][code_file] | |
| return True, file_data['summary']['percent_covered'] | |
| return False, 0 | |
| def check_mutation(mutation_output): | |
| if 'total jobs: ' in mutation_output: | |
| num_mutants = int(mutation_output.split('total jobs: ')[1].split('\n')[0]) | |
| final_conf = mutation_output.split('\n')[-1] | |
| if len(final_conf.strip().split(' ')) == 3: | |
| low, val, high = final_conf.split(' ') | |
| low = float(low) | |
| val = float(val) | |
| high = float(high) | |
| confidence_range = high - val | |
| mutation_score = 100 - val | |
| return True, num_mutants, mutation_score, confidence_range | |
| return False, -1, 0, -1 | |
| def count_methods(code_str): | |
| """ | |
| Counts the number of methods/functions in a given string of code. | |
| Args: | |
| code_str (str): A string containing code. | |
| Returns: | |
| int: The number of methods/functions found. | |
| """ | |
| # Regular expression to find Python function definitions | |
| pattern = r'\bdef\b\s+\w+\s*\(' | |
| matches = re.findall(pattern, code_str) | |
| return len(matches) | |
| def get_lines_of_code(code_str): | |
| """ | |
| Extracts lines of code from a given string. | |
| Args: | |
| code_str (str): A string containing code. | |
| Returns: | |
| list: A list of lines of code. | |
| """ | |
| return len(code_str.strip().split('\n')) | |