code: def pad_test_combine_ops(self, funcs, input_shape, expected_shape):
      for mode in TESTS_PENDING_MODE:
          # non-lazy
          _funcs = []
          for func in funcs:
              for _func, _params in func.items():
                  _funcs.append(_func(mode=mode[0], **_params))
          trans = Compose(_funcs)
          data = self.get_arr(input_shape)
          is_map = isinstance(_funcs[0], MapTransform)
          im = MetaTensor(
              data, meta={"a": "b", "affine": np.eye(len(input_shape))}
          )
          input_data = {"img": im} if is_map else im
          result_non_lazy = trans(input_data)
          expected = (
              result_non_lazy["img"] if is_map else result_non_lazy
          )
          self.assertIsInstance(expected, MetaTensor)
          # lazy
          pending_result = input_data
          for _func in _funcs:
              _func.lazy = True
              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",
              "padding_mode": mode[1],
              "align_corners": False,
          }
          result = apply_pending(pending_result, overrides=overrides)[0]
          # compare
          assert_allclose(result, expected, rtol=1e-5)
  
file_path: MONAI/tests/padders.py
imports: from __future__ import annotations
  import unittest
  import numpy
  import torch
  from monai.data.meta_tensor import MetaTensor
  from monai.transforms import Compose
  from monai.transforms.lazy.functional import apply_pending
  from monai.transforms.transform import MapTransform
  from monai.utils.enums import NumpyPadMode, PytorchPadMode
  from tests.utils import TEST_NDARRAYS_ALL, assert_allclose
label_desc: Use image node_id 5 for calling the PadTest obj's underlying member method code with example usage: obj.pad_test_combine_ops(funcs, input_shape, expected_shape) without return types