code: def evaluate_class(
      self,
      transform_class: Callable[..., None],
      fname: str,
      seed: Optional[int] = None,
      metadata_exclude_keys: Optional[List[str]] = None,
      **kwargs,
  ) -> None:
      metadata = []
  
      if not kwargs.pop("diff_video_input", False):
          kwargs["video_path"] = self.local_vid_path
  
      with tempfile.NamedTemporaryFile(suffix=".mp4") as tmpfile:
          transform_class(
              output_path=tmpfile.name,
              seed=seed,
              metadata=metadata,
              **kwargs,
          )
          self.assertTrue(
              os.path.exists(tmpfile.name),
              "Output video file does not exist",
          )
  
      self.check_equal_metadata(
          metadata, self.metadata[fname], metadata_exclude_keys
      )
  
file_path: AugLy/augly/tests/video_tests/base_unit_test.py
imports: import filecmp
  import os
  import tempfile
  import unittest
  from typing import Any, Callable, Dict, List, Optional, Tuple
  from augly.tests import VideoAugConfig
  from augly.utils import pathmgr, TEST_URI
label_desc: Use image node_id 5 for calling the BaseVideoUnitTest obj's underlying member method code with example usage: obj.evaluate_class(transform_class, fname, seed, metadata_exclude_keys) without return types