code: def test_not_matching_get_cache_files_pascal_voc(self):
      cache_dir = self.create_tempdir()
      temp_dir = self.create_tempdir()
      pascal_folder = os.path.join(temp_dir, "pascal_voc_data")
      shutil.copytree(
          tasks_test_utils.get_test_data_path("pascal_voc_data"),
          pascal_folder,
      )
      prev_cache_files = dataset_util.get_cache_files_pascal_voc(
          pascal_folder, cache_dir
      )
      os.chmod(pascal_folder, 0o700)
      os.chmod(os.path.join(pascal_folder, "images"), 0o700)
      os.chmod(os.path.join(pascal_folder, "Annotations"), 0o700)
      get_cache_files_and_assert_neq = (
          self._get_cache_files_and_assert_neq_fn(
              dataset_util.get_cache_files_pascal_voc
          )
      )
      # Test adding xml file
      with open(
          os.path.join(pascal_folder, "Annotations", "test.xml"), "w"
      ) as f:
          f.write("test")
      prev_cache_files = get_cache_files_and_assert_neq(
          prev_cache_files, pascal_folder, cache_dir
      )
  
      # Test rename folder
      new_pascal_folder = os.path.join(
          temp_dir, "pascal_voc_data_renamed"
      )
      shutil.move(pascal_folder, new_pascal_folder)
      pascal_folder = new_pascal_folder
      prev_cache_files = get_cache_files_and_assert_neq(
          prev_cache_files, new_pascal_folder, cache_dir
      )
  
imports: import hashlib
  import json
  import os
  import shutil
  from unittest import mock
  import tensorflow
  from mediapipe.model_maker.python.vision.core import test_utils
  from mediapipe.model_maker.python.vision.object_detector import dataset_util
  from mediapipe.tasks.python.test import test_utils
label_desc: Use image node_id 9 for calling the DatasetUtilTest obj's underlying member method code with example usage: obj.test_not_matching_get_cache_files_pascal_voc() without return types