code: def test_grid_search():
      """This function tests, whether H2O GridSearch with XGBoostEstimator
      can be passed unknown argument, which may possibly crash the H2O instance
      """
      assert (
          H2OXGBoostEstimator.available()
      ), "H2O XGBoost is not available! Please check machine env!"
  
      data = init_data()
      # `col_sample_rate_change_per_level` parameter can be set in other estimators, but NOT IN XGBoost,
      # so it should be an uknown parameter for XGBoost
      hyper_parameters = {
          "ntrees": 1,
          "seed": 1,
          "col_sample_rate_change_per_level": [0.9, 0.3, 0.2, 0.4],
      }
      raised = False
      try:
          grid_search = H2OGridSearch(
              H2OXGBoostEstimator, hyper_params=hyper_parameters
          )
          grid_search.train(
              x=data["predictors"],
              y=data["response"],
              training_frame=data["train"],
              validation_frame=data["test"],
          )
      except H2OResponseError:
          raised = True
  
      assert (
          raised is True
      ), "H2O should throw an exception if unknown parameter is passed to GridSearch with XGBoostEstimator!"
  
imports: import h2o
  from tests import pyunit_utils
  from h2o.estimators.xgboost import H2OXGBoostEstimator
  from h2o.exceptions import H2OResponseError, H2OValueError
  from h2o.grid.grid_search import H2OGridSearch
label_desc: Use image node_id 2 for calling a global function with example usage: test_grid_search() without return types