code: def test_slice_timing():
      affine = np.eye(4)
      affine[0:3, 0:3] = IM.affine[0:3, 0:3]
      im4d = Image4d(IM.get_fdata(), affine, tr=2.0, slice_times=0.0)
      x = resample4d(im4d, [Rigid() for i in range(IM.shape[3])])
      assert_array_almost_equal(im4d.get_fdata(), x)
  
imports: import warnings
  import nibabel
  import numpy
  import pytest
  from nibabel import io_orientation
  from numpy.testing import assert_array_almost_equal, assert_array_equal
  from ....None import load_image
  from ....core.image.image_spaces import make_xyz_image, xyz_affine
  from ....io.nibcompat import get_header
  from ....testing import funcfile
  from ...slicetiming.timefuncs import st_02413, st_42031, st_43210
  from ..affine import Rigid
  from ..groupwise_registration import FmriRealign4d, Image4d, Realign4d, Realign4dAlgorithm, SpaceRealign, SpaceTimeRealign, make_grid, resample4d
label_desc: Use image node_id 4 for calling a global function with example usage: test_slice_timing() without return types