code: def _test_classifier(
      self, X, model, rtol=1e-06, atol=1e-06, extra_config={}
  ):
      # convert model with entire dataset
      onnx_ml_model, onnx_model = self._convert_decision_tree(
          X, model, extra_config
      )
      # test model predictions with subset of data
      for n in [1, len(X)]:
          onnx_ml_pred, onnx_pred, _ = self._test_decision_tree(
              X[:n], onnx_ml_model, onnx_model
          )
          np.testing.assert_allclose(
              onnx_ml_pred[1], onnx_pred[1], rtol=rtol, atol=atol
          )  # labels
          np.testing.assert_allclose(
              list(
                  map(
                      lambda x: x
                      if isinstance(x, np.ndarray)
                      else list(x.values()),
                      onnx_ml_pred[0],
                  )
              ),
              onnx_pred[0],
              rtol=rtol,
              atol=atol,
          )  # probs
          np.testing.assert_equal(n, len(onnx_pred[0]))
  
imports: import unittest
  import warnings
  import numpy
  from sklearn.tree import DecisionTreeClassifier, DecisionTreeRegressor
  from sklearn.ensemble import RandomForestClassifier, RandomForestRegressor
  from onnxconverter_common.data_types import FloatTensorType
  from hummingbird.ml import convert
  from hummingbird.ml._utils import onnx_ml_tools_installed, onnx_runtime_installed, xgboost_installed
label_desc: Use image node_id 5 for calling the TestONNXDecisionTreeConverter obj's underlying member method code with example usage: obj._test_classifier(X, model, rtol, atol, extra_config) without return types