def build_getters_support_matrix(app):
status = subprocess.call("<STR_LIT>", stdout=sys.stdout, stderr=sys.stderr)<EOL>if status != <NUM_LIT:0>:<EOL><INDENT>print("<STR_LIT>")<EOL>sys.exit(-<NUM_LIT:1>)<EOL><DEDENT>drivers = set()<EOL>matrix = {<EOL>m: defaultdict(dict)<EOL>for m in dir(NetworkDriver)<EOL>if not (m.startswith("<STR_LIT:_>") or m in EXCLUDE_METHODS)<EOL>}<EOL>regex_name = re.compile(r"<STR_LIT>")<EOL>filename = "<STR_LIT>"<EOL>with open(filename, "<STR_LIT:r>") as f:<EOL><INDENT>data = json.loads(f.read())<EOL>for test in data["<STR_LIT>"]["<STR_LIT>"]:<EOL><INDENT>match = regex_name.search(test["<STR_LIT:name>"])<EOL>if match:<EOL><INDENT>driver = match.group("<STR_LIT>")<EOL>drivers.add(driver)<EOL>method = match.group("<STR_LIT>")<EOL><DEDENT>else:<EOL><INDENT>continue<EOL><DEDENT>if method in EXCLUDE_IN_REPORT:<EOL><INDENT>continue<EOL><DEDENT>result = test["<STR_LIT>"]<EOL>if method in METHOD_ALIASES.keys():<EOL><INDENT>method = METHOD_ALIASES[method]<EOL><DEDENT>intermediate_result = matrix[method].get(driver, None)<EOL>matrix[method][driver] = _merge_results(result, intermediate_result)<EOL><DEDENT><DEDENT>sorted_methods = sorted(matrix.keys())<EOL>drivers = sorted(drivers)<EOL>env = Environment(loader=FileSystemLoader("<STR_LIT:.>"))<EOL>template_file = env.get_template("<STR_LIT>")<EOL>rendered_template = template_file.render(<EOL>matrix=matrix, drivers=drivers, sorted_methods=sorted_methods<EOL>)<EOL>with open("<STR_LIT>", "<STR_LIT:w>") as f:<EOL><INDENT>f.write(rendered_template)<EOL><DEDENT>
Build the getters support matrix.