code: def test_function_abstract_functions(self):
      derived_function_classes = list(
          get_all_subclasses(AbstractFunction)
      )
      # Go over each derived class of AbstractFunction
      for derived_function_class in derived_function_classes:
          # skip yolo and HF to avoid downloading model
          if issubclass(
              derived_function_class, (Yolo, AbstractHFFunction)
          ):
              continue
          if isabstract(derived_function_class) is False:
              class_type = derived_function_class
              # Check class init signature
              # Ref: https://stackoverflow.com/a/2677263
              sig = inspect.signature(class_type.__init__)
              params = sig.parameters
              len_params = len(params)
              if "kwargs" in params:
                  len_params = len_params - 1
              if "args" in params:
                  len_params = len_params - 1
              # Construct dummy object of given type
              dummy_object = get_mock_object(class_type, len_params)
              self.assertTrue(str(dummy_object.name) is not None)
  
file_path: evadb/test/unit_tests/functions/test_abstract_udf.py
imports: import inspect
  import unittest
  from enum import Enum
  from inspect import isabstract
  from test.util import get_all_subclasses, get_mock_object
  import evadb
  from evadb.functions.abstract.abstract_function import AbstractFunction
  from evadb.functions.abstract.hf_abstract_function import AbstractHFFunction
  from evadb.functions.yolo_object_detector import Yolo
label_desc: Use image node_id 1 for calling the AbstractFunctionTest obj's underlying member method code with example usage: obj.test_function_abstract_functions() without return types