code: def test_parse_yaml_files(self) -> None:
      custom_ops_yaml_path = None
      selector = SelectiveBuilder.get_nop_selector()
      use_aten_lib = False
  
      parsed_yaml, custom_ops_parsed_yaml = parse_yaml_files(
          aten_yaml_path=self.aten_kernel_yaml_path,
          tags_yaml_path=self.tags_yaml_path,
          native_yaml_path=self.ops_yaml_path,
          custom_ops_yaml_path=custom_ops_yaml_path,
          selector=selector,
          use_aten_lib=use_aten_lib,
      )
  
      expected_kernel_entry = {"add.out": 9, "mul.out": 2}
      self.assertTrue(
          len(parsed_yaml.native_functions)
          == len(expected_kernel_entry)
      )
  
      op_entries = parsed_yaml.kernel_index.index
      for op_name, kernel_mapping in op_entries.items():
          self.assertTrue(
              len(kernel_mapping)
              == expected_kernel_entry.pop(str(op_name))
          )
  
      self.assertTrue(len(expected_kernel_entry) == 0)
  
imports: import os
  import tempfile
  import unittest
  from typing import Dict
  import yaml
  from torchgen.executorch.model import ETKernelIndex, ETKernelKey
  from torchgen.gen import LineLoader
  from torchgen.gen_executorch import ComputeCodegenUnboxedKernels, gen_functions_declarations, parse_yaml_files, translate_native_yaml
  from torchgen.model import BackendIndex, BackendMetadata, DispatchKey, Location, NativeFunction, OperatorName
  from torchgen.selective_build.selector import SelectiveBuilder
label_desc: Use image node_id 3 for calling the TestParseKernelYamlFiles obj's underlying member method code with example usage: obj.test_parse_yaml_files() without return types