code: def pickle_save_load(tmpdir, func_create_model, func_assert):
      model, X_test = func_create_model()
      pickle_file = tmpdir.join("cu_model.pickle")
      try:
          with open(pickle_file, "wb") as pf:
              pickle.dump(model, pf)
      except (TypeError, ValueError) as e:
          pf.close()
          pytest.fail(e)
  
      del model
  
      with open(pickle_file, "rb") as pf:
          cu_after_pickle_model = pickle.load(pf)
  
      func_assert(cu_after_pickle_model, X_test)
  
imports: from sklearn.model_selection import train_test_split
  from sklearn.manifold import trustworthiness
  from sklearn.datasets import load_iris, make_classification, make_regression
  from sklearn.base import clone
  from cuml.testing.utils import array_equal, unit_param, stress_param, ClassEnumerator, get_classes_from_package, compare_svm, compare_probabilistic_svm
  from cuml.tsa.arima import ARIMA
  import pytest
  import pickle
  import cuml
  from cuml.internals.safe_imports import cpu_only_import, cpu_only_import_from
label_desc: Use image node_id 1 for calling a global function with example usage: pickle_save_load(tmpdir, func_create_model, func_assert) without return types