def METHOD_NAME(self, input_param, input_shape, _expected_shape, _expected_last_item):
    input_data = np.arange(192).reshape(*input_shape)
    for p in TEST_NDARRAYS_ALL:
        xform = RandSpatialCropSamples(**input_param)
        image = p(input_data)
        # non-lazy
        xform.set_random_state(1234)
        expected = xform(image)
        self.assertIsInstance(expected[0], MetaTensor)
        # lazy
        xform.set_random_state(1234)
        xform.lazy = True
        pending_result = xform(image)
        for i, _pending_result in enumerate(pending_result):
            self.assertIsInstance(_pending_result, MetaTensor)
            assert_allclose(_pending_result.peek_pending_affine(), expected[i].affine)
            assert_allclose(_pending_result.peek_pending_shape(), expected[i].shape[1:])
            # only support nearest
            result = apply_pending(_pending_result, overrides={"mode": "nearest", "align_corners": False})[0]
            # compare
            assert_allclose(result, expected[i], rtol=1e-5)