class_docstr: Tune driver
code: def test_run(self):
      def mock_reporter(**kwargs):
          invalidInputError(
              self.metric_name in kwargs, "Did not report proper metric"
          )
          invalidInputError(
              "checkpoint" in kwargs,
              "Accidentally removed `checkpoint`?",
          )
          invalidInputError(False, "This works.")
  
      try:
          self.train_func(
              {
                  "out_units": 1,
                  "selected_features": [
                      "MONTH(datetime)",
                      "WEEKDAY(datetime)",
                  ],
              },
              mock_reporter,
          )
          # self.train_func(self.search_space, mock_reporter)
  
      except TypeError as e:
          print("Forgot to modify function signature?")
          invalidOperationError(False, str(e), cause=e)
      except GoodError:
          print("Works!")
          return 1
      invalidInputError(False, "Didn't call reporter...")
  
imports: import ray
  from ray import tune
  import os
  from bigdl.orca.automl.search.base import SearchEngine, TrialOutput, GoodError
  from bigdl.orca.automl.search.parameters import DEFAULT_LOGGER_NAME, DEFAULT_METRIC_NAME
  from bigdl.orca.automl.search.ray_tune.utils import convert_bayes_configs
  from bigdl.orca.automl.search.utils import get_ckpt_hdfs, put_ckpt_hdfs
  from ray.tune import Stopper
  from bigdl.orca.automl.model.abstract import ModelBuilder
  from bigdl.orca.data import ray_xshards
  from ray.tune.progress_reporter import TrialProgressCallback
  from bigdl.dllib.utils.log4Error import *
label_desc: Use image node_id 13 for calling the RayTuneSearchEngine obj's underlying member method code with example usage: obj.test_run() and returns: int