code: def test_generic_custom(
      iris_split_dataset_and_model_custom: t.Tuple[
          Dataset, Dataset, t.Any
      ],
      diabetes_split_dataset_and_model_custom: t.Tuple[
          Dataset, Dataset, t.Any
      ],
  ):
      (
          iris_train,
          iris_test,
          iris_model,
      ) = iris_split_dataset_and_model_custom
      (
          diabetes_train,
          diabetes_test,
          diabetes_model,
      ) = diabetes_split_dataset_and_model_custom
  
      suite = suites.full_suite()
  
      arguments = (
          dict(
              train_dataset=iris_train,
              test_dataset=iris_test,
              model=iris_model,
          ),
          dict(
              train_dataset=diabetes_train,
              test_dataset=diabetes_test,
              model=diabetes_model,
          ),
      )
  
      for args in arguments:
          result = suite.run(**args)
          length = get_expected_results_length(suite, args)
          validate_suite_result(result, length)
  
imports: import typing
  from datetime import datetime
  import pandas
  import pytest
  from catboost import CatBoostClassifier, CatBoostRegressor
  from hamcrest import assert_that, contains_exactly, has_length
  from lightgbm import LGBMClassifier, LGBMRegressor
  from sklearn.ensemble import AdaBoostClassifier
  from sklearn.model_selection import train_test_split
  from xgboost import XGBClassifier, XGBRegressor
  from deepchecks.tabular import Dataset, suites
  from tests.common import get_expected_results_length, validate_suite_result
label_desc: Use image node_id 17 for calling a global function with example usage: test_generic_custom(iris_split_dataset_and_model_custom, diabetes_split_dataset_and_model_custom) without return types