code: def test_predict_step_function(breast_cancer, func):
      X, y = breast_cancer
  
      tree = SurvivalTree(
          max_features="log2",
          splitter="random",
          max_depth=5,
          min_samples_split=30,
          min_samples_leaf=15,
          random_state=6,
      )
      tree.fit(X.iloc[10:], y[10:])
  
      pred_fn = getattr(tree, func)
  
      ret_array = pred_fn(X.iloc[:10], return_array=True)
      fn_array = pred_fn(X.iloc[:10], return_array=False)
  
      assert ret_array.shape[0] == fn_array.shape[0]
  
      for fn, arr in zip(fn_array, ret_array):
          assert_array_almost_equal(fn.x, tree.unique_times_)
          assert_array_almost_equal(fn.y, arr)
  
imports: from itertools import product
  from queue import LifoQueue
  import numpy
  from numpy.testing import assert_array_almost_equal, assert_array_equal
  import pandas
  import pytest
  from scipy import sparse
  from sklearn.model_selection import train_test_split
  from sklearn.pipeline import make_pipeline
  from sklearn.preprocessing import OrdinalEncoder
  from sklearn.tree._tree import TREE_UNDEFINED
  from sksurv.compare import compare_survival
  from sksurv.datasets import load_breast_cancer, load_veterans_lung_cancer
  from sksurv.nonparametric import kaplan_meier_estimator, nelson_aalen_estimator
  from sksurv.tree import SurvivalTree
  from sksurv.util import Surv
label_desc: Use image node_id 14 for calling a global function with example usage: test_predict_step_function(breast_cancer, func) without return types