code: def crop_test_combine_ops(self, funcs, input_shape):
      _funcs = []
      for func in funcs:
          for _func, _params in func.items():
              _funcs.append(_func(**_params))
      is_map = isinstance(_funcs[0], MapTransform)
      data = self.get_arr(input_shape)
      im = MetaTensor(
          data, meta={"a": "b", "affine": np.eye(len(input_shape))}
      )
      input_data = {"img": im} if is_map else im
  
      # non-lazy
      non_lazy_result = input_data
      for _func in _funcs:
          if isinstance(_func, Randomizable):
              _func.set_random_state(seed=123)
          non_lazy_result = _func(non_lazy_result)
      expected = non_lazy_result["img"] if is_map else non_lazy_result
      self.assertIsInstance(expected, MetaTensor)
  
      # lazy
      pending_result = input_data
      for _func in _funcs:
          _func.lazy = True
          if isinstance(_func, Randomizable):
              _func.set_random_state(seed=123)
          pending_result = _func(pending_result)
      pending_result = (
          pending_result["img"] if is_map else pending_result
      )
      self.assertIsInstance(pending_result, MetaTensor)
      assert_allclose(
          pending_result.peek_pending_affine(), expected.affine
      )
      assert_allclose(
          pending_result.peek_pending_shape(), expected.shape[1:]
      )
      # TODO: mode="bilinear" may report error
      overrides = {"mode": "nearest", "align_corners": False}
      result = apply_pending(pending_result, overrides=overrides)[0]
  
      # compare
      assert_allclose(result, expected, rtol=1e-5)
  
file_path: MONAI/tests/croppers.py
imports: from __future__ import annotations
  import unittest
  from copy import deepcopy
  import numpy
  from monai.data.meta_tensor import MetaTensor
  from monai.transforms import Randomizable
  from monai.transforms.lazy.functional import apply_pending
  from monai.transforms.transform import MapTransform
  from tests.utils import TEST_NDARRAYS_ALL, assert_allclose
label_desc: Use image node_id 6 for calling the CropTest obj's underlying member method code with example usage: obj.crop_test_combine_ops(funcs, input_shape) without return types