code: def test__sample_ice_warning(explanation, caplog):
      """Test if the sampling function logs a warning when the number of ices is greater that the number
      of instances in the reference dataset and if it returns all ices
      """
      n_samples, n_values = 10, 5
      ice_values = np.random.randn(n_values, n_samples)
      sampled_ice_values = _sample_ice(
          ice_values=ice_values, n_ice=n_samples + 1
      )
      assert (
          "`n_ice` is greater than the number of instances in the reference dataset."
          in caplog.records[0].message
      )
      assert np.allclose(ice_values, sampled_ice_values)
  
imports: import re
  import sys
  from copy import deepcopy
  from typing import Dict, List, Optional, Tuple, Union
  from packaging import version
  import matplotlib.pyplot
  import numpy
  import pandas
  import pytest
  from pytest_lazyfixture import lazy_fixture
  from sklearn.base import BaseEstimator
  from sklearn.datasets import make_classification
  from sklearn.ensemble import GradientBoostingClassifier
  from sklearn.exceptions import NotFittedError
  from sklearn.inspection import partial_dependence
  from sklearn.model_selection import train_test_split
  from sklearn.multioutput import MultiOutputClassifier
  from sklearn.pipeline import Pipeline
  from sklearn.utils import Bunch, shuffle
  import sklearn
  from alibi.api.defaults import DEFAULT_DATA_PD, DEFAULT_META_PD
  from alibi.api.interfaces import Explanation
  from alibi.explainers import PartialDependence, TreePartialDependence, plot_pd
  from alibi.explainers.partial_dependence import _plot_one_pd_cat, _plot_one_pd_num, _plot_two_pd_cat_cat, _plot_two_pd_num_cat, _plot_two_pd_num_num, _process_pd_ice, _sample_ice
label_desc: Use image node_id 41 for calling a global function with example usage: test__sample_ice_warning(explanation, caplog) without return types