code: def test_bootstrap_samples():
      # Test that bootstrapping samples generate non-perfect base estimators.
      X, y = make_imbalance(
          iris.data,
          iris.target,
          sampling_strategy={0: 20, 1: 25, 2: 50},
          random_state=0,
      )
      X_train, X_test, y_train, y_test = train_test_split(
          X, y, random_state=0
      )
  
      estimator = DecisionTreeClassifier().fit(X_train, y_train)
  
      # without bootstrap, all trees are perfect on the training set
      # disable the resampling by passing an empty dictionary.
      ensemble = BalancedBaggingClassifier(
          estimator=DecisionTreeClassifier(),
          max_samples=1.0,
          bootstrap=False,
          n_estimators=10,
          sampling_strategy={},
          random_state=0,
      ).fit(X_train, y_train)
  
      assert ensemble.score(X_train, y_train) == estimator.score(
          X_train, y_train
      )
  
      # with bootstrap, trees are no longer perfect on the training set
      ensemble = BalancedBaggingClassifier(
          estimator=DecisionTreeClassifier(),
          max_samples=1.0,
          bootstrap=True,
          random_state=0,
      ).fit(X_train, y_train)
  
      assert ensemble.score(X_train, y_train) < estimator.score(
          X_train, y_train
      )
  
imports: from collections import Counter
  import numpy
  import pytest
  import sklearn
  from sklearn.cluster import KMeans
  from sklearn.datasets import load_iris, make_classification, make_hastie_10_2
  from sklearn.dummy import DummyClassifier
  from sklearn.feature_selection import SelectKBest
  from sklearn.linear_model import LogisticRegression, Perceptron
  from sklearn.model_selection import GridSearchCV, ParameterGrid, train_test_split
  from sklearn.neighbors import KNeighborsClassifier
  from sklearn.svm import SVC
  from sklearn.tree import DecisionTreeClassifier
  from sklearn.utils._testing import assert_allclose, assert_array_almost_equal, assert_array_equal
  from sklearn.utils.fixes import parse_version
  from imblearn import FunctionSampler
  from imblearn.datasets import make_imbalance
  from imblearn.ensemble import BalancedBaggingClassifier
  from imblearn.over_sampling import SMOTE, RandomOverSampler
  from imblearn.pipeline import make_pipeline
  from imblearn.under_sampling import ClusterCentroids, RandomUnderSampler
label_desc: Use image node_id 2 for calling a global function with example usage: test_bootstrap_samples() without return types